为什么我的python脚本没有打印任何东西

时间:2015-08-21 15:13:48

标签: python

我有一个问题..每当我写任何Python脚本时都说这样

#!/usr/local/bin/python
print "hello"

然后使用

chmod +x a.py

然后写./a.py然后它不会在终端中打印任何内容

此外,每当我在shabang行下面写任何评论时,它都会给我一个错误的说法 #: bad interpreter : No such file or directory

但是当我像这样python a.py运行脚本时,它会照常工作..

有人可以告诉我错误以及如何解决这个问题。

2 个答案:

答案 0 :(得分:6)

这几乎可以肯定是因为你的行结尾是一个回车/换行组合 - 这是Windows风格的编辑器会创建的。 Unix将LF视为行的末尾,因此它正在寻找名为"python\r"的可执行文件。当您通过显式调用解释器来运行它时,shebang行只被视为注释。

答案 1 :(得分:0)

linux下文本替换修复:

sed -i 's/^ M//g' filename 

(注意^M是linux写的,按^M是回车换行,输入法是按住CTRL+v,松开v,按m)

如果错误消息如下所示,这将解决第一行中 shell 的错误结束行:

/usr/bin/python3 ^M: bad interpreter: No such file or directory