【问题标题】:In Python, if two modules have the same name, which would be imported? [duplicate]在 Python 中,如果两个模块具有相同的名称,将导入哪个模块? [复制]
【发布时间】:2021-06-10 21:42:49
【问题描述】:

我无法在网上找到任何直接的答案。它会只使用最接近试图导入它的文件的文件吗?是否有某种优先系统?还是只会返回错误?

【问题讨论】:

  • 作为调试思路,创建两个自己的同名模块。让每个模块在导入时打印其路径。然后将它们放在本地文件夹、python 路径等中,看看先导入什么!
  • 另外,一个相关的问题在这里:stackoverflow.com/questions/9586630/…
  • 这能回答你的问题吗? Python import precedence: packages or modules?
  • @SNygard 我试过了,它奏效了!显然它使用最接近试图导入的文件的模块。

标签: python


【解决方案1】:

感谢@SYngard 的建议,我发现导入的模块将是(就文件路径而言)与尝试按名称导入模块的文件最接近的模块。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-31
    • 1970-01-01
    • 2019-10-29
    • 2020-01-26
    • 1970-01-01
    • 1970-01-01
    • 2020-03-02
    • 2013-12-03
    相关资源
    最近更新 更多