【问题标题】:ModuleNotFoundError: __path__ attribute not found on 'guessing_game' while trying to find 'guessing_game.py'ModuleNotFoundError:尝试查找“guessing_game.py”时在“guessing_game”上找不到__path__属性
【发布时间】:2020-04-03 13:55:12
【问题描述】:

我编写了一个简单的 Python 程序“guessing_game.py”。当我尝试在命令提示符下使用python -m guessing_game.py 运行此代码时,程序运行良好,但最后显示:

查找“guessing_game.py”的模块规范时出错
(ModuleNotFoundError:在“guessing_game”上找不到 path 属性 在尝试查找“guessing_game.py”时)。

当我使用python -guessing_game.py 运行相同的程序时,它运行良好,并且也不显示该消息。

【问题讨论】:

  • -m 采用模块名称,而不是文件路径,.py 不是模块名称的一部分。

标签: python modulenotfounderror


【解决方案1】:

因为您试图将其作为模块运行?

-m 搜索命名模块的 sys.path 并将其内容作为 ma​​in 模块执行。

因为参数是模块名,所以不能给文件 扩展名 (.py)。模块名称应该是一个有效的 Python 模块名称, 但实施可能并不总是强制执行这一点(例如,它可能允许 您可以使用包含连字符的名称)。

【讨论】:

  • 我知道 -m 在 sys.path 中搜索命名模块,但您能否详细说明“将其内容作为主模块执行”是什么意思
猜你喜欢
  • 2020-05-09
  • 2020-04-10
  • 1970-01-01
  • 2013-01-25
  • 2020-04-04
  • 1970-01-01
  • 1970-01-01
  • 2015-02-02
  • 2016-01-18
相关资源
最近更新 更多