不一致的 Python 错误 - Class 在终端中工作正常,但在脚本中不工作

Inconsitent Python error - Class works fine in terminal, but not in script

我 运行 遇到了一个 st运行ge 错误,我不太清楚涉及通过 pip 安装的库。

我 运行 pip3 install mcp9600 为温度传感器安装一个库,然后通过 运行 宁一个 python 终端验证这是否按预期工作,导入库,并调用相关的 class:

之后,我尝试 运行 从 .py 文件中执行完全相同的操作,但出现以下错误:

我真的不太确定发生了什么或如何解决它,因为我以前从未遇到过这个问题。这是怎么回事?

你的脚本文件也被命名为mcp9600.py,就像模块一样。 Python 开始在与源文件相同的目录中搜索模块,因此它找到的是脚本本身而不是模块。

尝试重命名您的脚本。

您的脚本名为 mcp9600.py,因此代码 import mcp9600 将脚本作为模块导入。该脚本(作为模块导入)没有任何 MCP9600 因此 AttributeError.

将脚本重命名为其他名称。即使 mcp9600(没有 .py)也可以。吸取教训:永远不要将您的脚本命名为与 Python 库相同的名称;例如,永远不要将您的脚本命名为 email.pytest.py — 它们会掩盖 Python 的 emailtest.

我明白了。好像我不能调用与库名称相同的 python 脚本!

我是新手,但还是很尴尬!