在Windows 7中读取.py脚本

时间:2017-05-07 01:32:17

标签: python

我有Python 3和一个带有简单.py文件的文件夹,上面写着Hello World。我使用os.chdir("path-to-file")导航到该文件,之后我在Python命令行中输入文件的名称(例如demo.py)。每次我这样做,我都会收到错误消息:

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

无论如何,当我在一个简单的Windows命令行中运行python脚本时,它运行良好。这是为什么?

顺便说一句,关于Python的任何其他阅读列表/链接都会有所帮助。

1 个答案:

答案 0 :(得分:1)

从命令行运行脚本:

$ python3 /path/to/file

除非所有代码都包含在函数或类中,否则您不希望在python解释器中运行脚本。假设您的文件script.py如下所示:

print("Beep boop")

你可以通过导入

在python解释器中加载这个文件
>>> os.chdir("path/to/file")
>>> import script
Beep boop

但这是解决这个问题的错误方法。 import用于在文件之间共享代码 - 不执行代码。如果script.py看起来像这样:

def main():
    print("Beep boop")

if __name__ == "__main__":
    main()

然后你可以像这样运行它

>>> os.chdir("path/to/file")
>>> import script
>>> script.main()
Beep boop

或者像这样:

$ python3 /path/to/file
Beep boop

对于第一个工作方法,您还需要一个名为__init__.py的文件与script.py在同一目录中。

我建议你做一些关于如何使用命令行的阅读,一开始很令人沮丧,但值得付出努力。