在一个名为test.py的文件中我有以下代码
#!/usr/bin/python3
with open('test.txt','w') as File:
print(1,file=File)
当我这样做时
$ python3 test.py
运行正常。但是当我做的时候
$ chmod +x test.py
$ ./test.py
我得到一个SyntaxError:
File "./test.py", line 4
print(1,file=File)
^
SyntaxError: invalid syntax
任何人都知道为什么?谢谢
我在Ubuntu 13.04中运行Python 3.3.1
答案 0 :(得分:2)
看起来你出于某种原因正在使用Python 2解释器。也许尝试使用env
搜索正确的python3
:
#!/usr/bin/env python3
with open('test.txt','w') as File:
print(1,file=File)
env
应该找到与您的shell相同的python3
。
值得一提的是,即使您没有遇到问题,这也是一个好主意,因为它可以让您的脚本在python3
可用的任何平台上运行,无论它在哪里,都可以让您的脚本更具可移植性。