【发布时间】:2014-07-06 23:51:32
【问题描述】:
python -c 'import sys; print "a"'
有效,并且
python -c 'for a in [1, 2, 3]: print a'
有效,但是
python -c 'import sys; for a in [1, 2, 3]: print a'
失败
File "<string>", line 1
import sys; for a in [1, 2, 3]: print a
^
为什么?
编辑我的解决方法:
python -c 'import sys; print "\n".join([1, 2, 3])'
(幸运的是它也适用于我的真实代码。)
【问题讨论】:
-
您使用的是什么操作系统和什么外壳?
-
我可以重现它 ubuntu+bash, python 2.7.3.
-
它没有连接到shell或
-c标志;在 REPL 中也会发生同样的事情。 -
您在错误消息中缺少一行:
SyntaxError: invalid syntax -
Python 3 的另一种解决方法,使用理解:
python -c 'import sys; [print(i) for i in [1, 2, 3]]
标签: python python-2.7 syntax