在python的cmd中找不到'__main__'模块

时间:2019-11-15 20:50:57

标签: python python-3.x

我刚刚开始用python3进行编码,对于一个学校项目,我们不得不编写一个带有矩阵的.txt文件和一个.py文件,我应该在其中导入.txt文件并执行代码。一切都应使用以下语法在cmd中执行:python matrix_input.txt matrixReloaded.py。 但是我在cmd中执行代码时,出现以下错误:找不到' main '模块。 .txt文件是一个仅包含矩阵的简单文本文件。 在我的.py文件中,我必须为.txt文件和.py文件都创建一个目录,然后按照在矩阵上执行某些操作的代码进行操作。 我尝试了多种方法,但是由于我是新手,所以没有任何效果。 我该如何解决?

1 个答案:

答案 0 :(得分:1)

为了执行python脚本,需要定义一个入口点。该入口点是main模块。您正在得到错误,因为该错误未在脚本中定义。因此,在您的脚本matrixReloaded.py中,您希望包含以下模块:

if __name__ == "__main__":
    do_something()

现在,为了从外壳执行脚本,您需要指定脚本,然后才指定要尝试传递的参数(在您的情况下,为文件名):python matrixReloaded.py matrix_input.txt < / p>

最后,要访问参数(然后打开文件或您需要执行的任何操作),则需要包括sys模块。这是一个示例:

import sys

if __name__ == "__main__":
    print sys.argv[0] # prints matrixReloaded.py
    print sys.argv[1] # prints matrix_input.txt