gpt4 book ai didi

python - 不同目录下的不同导入结果

转载 作者:太空狗 更新时间:2023-10-30 03:06:51 25 4
gpt4 key购买 nike

我有一个包 MyPak 和一个模块 MyMod。这些文件按以下方式组织:

somedir/MyPak/MyMod.py

在MyMod.py中只有一个类名也是MyMod

在目录 somedir/MyPak 中,如果我执行导入:

import MyMod

我将 MyMod 作为模块导入。

但是在目录 somedir/ 中,如果我这样做了

from MyPak import MyMod

我将 MyMod 作为类而不是模块导入。为什么会这样?

最佳答案

此行为表明您有一个文件:

somedir/MyPak/__init__.py

其中您执行以下操作:

from MyMod import *

当您import MyPak 时,它会从 __init__.py 导入 - 同样,当您from MyPak import something 时,它会尝试从包的命名空间中提取 - 它将在 __init__.py

内部查找

因为您在 __init__.py 中从 MyMod 导入了所有内容,现在该类是 MyPak 包的本地类,并且屏蔽了 MyMod.py 文件。

关于python - 不同目录下的不同导入结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6945592/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com