从CMD Windows 10运行.py文件时出现NameError

时间:2016-11-09 22:26:26

标签: python cmd interpreter nameerror

我正在尝试从Windows 10中的CMD行运行在文本编辑器中创建的.py文件。这是我非常简单的代码:

def main():
    print 'It works!'

if __name__ == '__main__':
    main()

当我从已经处于python 2.7模式的CMD行运行时,我输入

pytest.py

这是文件的名称。但是,现在CMD线说:

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

CMD Screenshot

CMD Screenshot 2

3 个答案:

答案 0 :(得分:2)

您无法从Python解释器运行>>>文件(从C:\Users\Eric> python pytest.py开始)

因此,您需要看python在您的文件上运行python

,您只能运行import,然后您必须>>> import pytest >>> pytest.main() 该文件。

cd

两种情况都假设CMD与您的文件位于同一目录中。如果没有,您必须先C:\Users\Eric> python C:\Users\Eric\full\path\to\pytest.py 到该正确的目录,或使用

nextInt()

答案 1 :(得分:2)

当您通过CMD在Windows中启动终端时,您将进入Windows命令行。 在这里,您可以输入

来运行您的python代码
python yourpythoncode.py

或者你可以选择只输入:

来启动python解释器
python

在解释器中,您可以通过导入它来运行您的python程序

import yourpythoncode

如果yourpythoncode有一行像

那样
if ___name___ = ___main___:
    main()

然后它被保护免于自动运行代码。 因此,要运行代码,您仍需要通过输入以下内容来明确调用它:

main()

答案 2 :(得分:0)

使文件可执行或将其提供给python程序以运行它

python pytest.py

如果从python解释器中运行该文件,则需要使用Ctrl + Z退出该文件,并按照我上面提到的方式从命令行运行它。

注意:您需要切换到pytest.py所在的目录才能使上述命令生效;或者您需要提供文件的路径。例如,从您的图片中,您位于根目录中,即C:\Users\Eric;如果您在Windows上打开文件资源管理器并导航到您的文件所在的位置,您可以右键单击该文件并查看属性,这应该显示位置。然后在命令提示符下,您需要键入cd C:\location\you\just\copied\然后您应该能够使用上面的python命令运行该文件