据我所知,这似乎是完全随机的。我不知道这是怎么回事。我在 Windows 上。
>>> python ex.py
File "<stdin>", line 1
python ex.py
^
SyntaxError: invalid syntax
谁能告诉我是什么原因造成的?真是太奇怪了……顺便说一句,python 2.7。无论我通过 Powershell 还是 CMD,结果都是一样的。
请您参考如下方法:
您处于 python 解释器本身的交互式 session 中,您不能以这种方式调用 python。
改为直接从命令行运行命令。
如果你想以这种方式从 python 中执行一个文件,你必须使用:
>>> execfile("ex.py")
顺便说一下,不要养成使用 execfile 的习惯 - 虽然它很方便,但除非您真的知道自己在做什么以及为什么这样做,否则这不是最好的主意。
为了详细说明,根据@Levon 的要求,execfile 以及 exec 和 eval 使您的脚本运行绝对任意代码.如果您控制所有代码并且是唯一的用户,那么这并不是真正的问题。不过,因为这股力量太大,很容易被人滥用。所以,如果您分发您的代码,并且除了使用 execfile 之外绝对有任何其他方法来设计它,那么就这样做吧。
