我在TextWrangler中运行Python并且它工作正常但在Mac终端上却没有

时间:2013-01-23 17:15:42

标签: python terminal textwrangler

Python代码:

"<stdin>"
#!/usr/bin/env
print "Hello world!" 
print "How are you?" 

以上是我在脚本上应用的一些代码,它在TextWrangler中运行时有效,但是当我把它放在Terminal中时,它会失败。

为什么会这样?这与我打开文件的方式有关吗?

2 个答案:

答案 0 :(得分:3)

/usr/bin/env不是Python的正确路径。很可能是shebang系列应该是:

#!/usr/bin/env python

我很确定它必须是第一行,所以删除"<stdin>"行(无论如何都被Python忽略)。

还要确保您已在脚本上设置了执行权限:chmod +x /path/to/script.py

答案 1 :(得分:1)

#!开头的行在Unix中称为shebang line。根据定义,你的shebang有两个问题:

  1. sheebang必须是脚本中的第一行 - 你在第二行有它。
  2. 如果Python是目标解释器,你需要Python的绝对路径(类似#!/usr/bin/Python或者env的参数来执行配置的Python - 类似于#!/usr/bin/env Python注意参数'Python '到实用程序env