gpt4 book ai didi

python - 在 Python 2.7 中导入我自己的模块时行为不一致

转载 作者:太空宇宙 更新时间:2023-11-03 16:08:56 25 4
gpt4 key购买 nike

我创建了一个模块,它位于自己的文件夹中,其中包含一个 __init__.py 和四个包含我的类的文件。

当执行 from MyPackage import * 时,我得到了已写入 __init__.py 中的 __all__ 语句的模块正如预期的那样。

当执行 from MyPackage import ModuleX 时,我可以单独导入任何模块。

当执行import MyPackage然后说dir(MyPackage)时,我得到的只是这样:

['__all__',
'__builtins__',
'__doc__',
'__file__',
'__name__',
'__package__',
'__path__']

我的模块未显示,我也无法使用 MyPackage.ModuleX 访问它们。

我在 __init__.py 中写入的唯一内容是 __all__ = [ModuleX] 语句。

为什么最后一条语句看不到我的模块?我还需要设置更多配置吗?

最佳答案

__all__ 确定从该模块导出哪些名称。但是,为了导出它们,您需要首先导入它们,但您还没有导入它们。

关于python - 在 Python 2.7 中导入我自己的模块时行为不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39485982/

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