2013-05-07 111 views
0

在windows终端中,一种类型:python3 program.py<input_file.txt使用文本输入文件运行程序。 我是新来的Linux和我已经试过这一点,我得到的错误:输入文件与python 3 EOF

File "<string>", line 1, in <module> 

任何建议,为什么它的阅读我的输入文件作为一个字符串?任何帮助将非常有用!

+2

请发表您的源代码。问题不在命令行中。 – 2013-05-07 19:21:36

+1

这是完整的错误吗?这几乎肯定只是其中的一部分。另外,导致这个问题的'program.py'和'input_file.txt'的[示例内容](http://sscce.org/)是什么? – phihag 2013-05-07 19:22:01

+0

Python不会将您的'input_file.txt'作为字符串读取。 shell正在将'input_file.txt'作为Python的标准输入,并且Python将它交给脚本,就像在Windows中一样。 – abarnert 2013-05-07 19:22:22

回答

1

疯狂的猜测。您在Windows中使用python3,但是您在Linux中使用python2。此外,您的程序中还有一个input()函数调用。你陷入了python2和python3之间的不兼容变化。

您可以通过在每个环境中运行python -V来确认我的怀疑。

如果我是对的,您可以通过将input()替换为raw_input()或在Linux上安装python3来解决问题。

+0

哇,谢谢!我已经在两台机器上下载并安装了3.3.1,但我猜测它在我的Linux机器上没有占用2.7的位置。 – 2013-05-08 21:31:20