从Python命令行调用Python时,为什么Python无法找到并运行我的脚本?

时间:2012-06-02 19:07:44

标签: python windows directory execute

我在python命令行中(使用python 2.7),并尝试运行Python脚本。我的操作系统是Windows 7.我已将目录设置为包含所有脚本的文件夹,使用:

os.chdir("location")

os.getcwd()返回此位置。

当我输入:

python myscript.py

我收到此错误:

File "<stdin>", line 1

python myscript.py
              ^

SyntaxError: invalid syntax

我做错了什么?

我正在尝试运行的脚本的第一个未注释的行:

from game import GameStateData

4 个答案:

答案 0 :(得分:5)

听起来你正试图从Python中运行你的脚本。这不是它的工作原理。如果要运行myscript.py,则需要从 system 命令提示符执行此操作,而不是从Python解释器内部执行。 (例如,从开始菜单中选择“命令提示符”。我认为它通常位于“附件”或类似的东西下。)从那里,您需要使用CD命令更改到脚本所在的目录。

答案 1 :(得分:2)

根据您提供的其他信息, 看起来就像是在Python内部发出命令。

编辑:可能部分混淆来自术语command line。您位于 两者 “Windows命令”shell中的命令行,也位于“Python shell”内部。

这是我在Python shell中进入命令行时所得到的:

D:\Users\blabla \Desktop>python

Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.

>>> python testit.py
  File "<stdin>", line 1
    python testit.py
                ^
SyntaxError: invalid syntax
>>>

或者这个:

>>> os.chdir("..")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'os' is not defined
>>>

我的建议是使用cmd命令打开Windows命令shell窗口,然后从那里发出python myscript.py

要获得更多帮助,查看代码是有帮助的,至少是发生错误的前几行以及发出python命令的确定位置。

答案 2 :(得分:1)

正如其他答案所示,您可能无意中在Python shell中。但如果您确实想从那里运行脚本,请尝试execfile("myscript.py")

答案 3 :(得分:0)

在Windows shell上运行echo %PATH%,检查你的.py是否在任何路径下。