python3:ImportError:没有名为xxxx的模块[重复]

python3:ImportError:没有名为xxxx的模块[重复],第1张

python3:ImportError:没有名为xxxx的模块[重复]

TL; DR:
相对进口不见了。请改用绝对导入。

可以使用:

from Phone.Pots import Pots

要么:

from .Pots import Pots

发生问题是因为它

Pots
Phone
软件包的一部分:没有名为的模块
Pots
,有名为的模块
Phone.Pots

Python 2具有称为“ 相对导入” 的功能,

import Pots
即使在技术上不正确,该功能也可以让您编写。

但是相对进口是问题和混乱的根源:

  • 读取代码的人不能立即说出导入是否来自软件包。
  • 模块怎么命名
    Phone.Pots
    ,但是我可以使用
    import Pots
    ?这是非常不一致的。
  • 如果子模块遮盖了另一个模块的名称怎么办?

由于这些原因,相对导入已从Python 3中删除。


您可以使用

__future__
import摆脱Python
2的相对导入:

from __future__ import absolute_import


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5632225.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存