__init__.py的目的是什么?
2022-09-05 00:43:00
在Python源目录中__init__.py
做什么?
它曾经是软件包的必需部分(旧的,3.3之前的“常规包”,而不是较新的3.3 +“命名空间包”)。
Python定义了两种类型的包,常规包和命名空间包。常规包是传统的包,因为它们存在于Python 3.2及更早版本中。常规包通常实现为包含文件的目录。导入常规包时,将隐式执行此文件,并且它定义的对象将绑定到包命名空间中的名称。该文件可以包含与任何其他模块可以包含的相同的Python代码,Python将在导入模块时向模块添加一些其他属性。
__init__.py
__init__.py
__init__.py
但只需单击链接,它包含一个示例,更多信息以及命名空间包的说明,即没有.__init__.py
命名的文件用于将磁盘上的目录标记为 Python 包目录。如果您有文件__init__.py
mydir/spam/__init__.py
mydir/spam/module.py
并且位于您的路径上,您可以将代码导入为mydir
module.py
import spam.module
或
from spam import module
如果删除该文件,Python 将不再在该目录中查找子模块,因此尝试导入该模块将失败。__init__.py
该文件通常是空的,但可用于以更方便的名称导出包的选定部分,保留便利功能等。给定上面的示例,init 模块的内容可以作为__init__.py
import spam
基于此