我很难理解在我的项目中,Python的__init__.py
文件的使用场景或设计目标。
假设我有一个'model'目录(称为一个包),其中包含以下文件:
__init__.py
meta.py
solrmodel.py
mongomodel.py
samodel.py
我发现了两种使用__init__.py
的方法:
我有一个通用的定义需要在
solrmodel.py
、mongomodel.py
、samodel.py
中使用。我可以将__init__.py
作为所有*model.py类的基础/通用定义吗?这意味着我必须导入model/__init__.py
。或者,
__init__.py
应该导入其自身中solrmodel.py、mongomodel.py、samodel.py的定义,它允许轻松导入类或函数,如下所示:
# file: __init__.py
from mongomodel import *
from solrmodel import *
from samodel import *
我知道import *
不被推荐使用,但我只是按照惯例使用它。
我无法决定上述两种情况之间的区别。是否有更多使用__init__.py
的场景,并且您能否解释一下其用途?
\
init.py`。或者使用反斜杠,例如
\_\_init\_\_.py` 代表 __init__.py。下划线用于斜体。 - Ponkadoodle