我有一个python包main
和other_python_files
,如:
main/
__init__.py
lib.py
other_python_files/
__init__.py
test.py
让lib.py
包含一个名为MyClass
的类。当我在from main import lib.py
内MyClass
并使用test.py
时,我收到MyClass
未定义的错误。
我尝试在from main import MyClass
目录中的init文件中执行main
但我仍然遇到相同的错误。如何从lib.py
文件中导入特定的类?
答案 0 :(得分:2)
您必须从lib
中导出该类:
from main.lib import MyClass
或使用lib.MyClass
代替MyClass
。
您还可以在MyClass
内的__init__.py
文件中导入main
,这样您就可以按照原来的方式导入该文件:
__all__ = ['MyClass']
from lib import MyClass
您可以在此处阅读__all__
:Can someone explain __all__ in Python?