5

创建 Python 包时,我被告知要创建一个名为init .py 的空白文件。我不明白为什么我需要创建这个文件。distutils构建脚本没有修改它,所以五个构建之后它仍然是空白的。它的目的是什么?

4

1 回答 1

5

它向 Python 发出信号,表明该文件夹是一个包,而不仅仅是一个文件夹。它还包含在将包import编入脚本时运行的初始化代码。

有关更多信息,请参阅有关该主题的文档。最相关的摘录:

需要这些__init__.py文件才能使 Python 将目录视为包含包;这样做是为了防止具有通用名称的目录(例如string)无意中隐藏了稍后出现在模块搜索路径上的有效模块。在最简单的情况下,__init__.py可以只是一个空文件,但它也可以执行包的初始化代码或设置__all__ 变量,稍后介绍。

于 2013-05-14T00:40:31.947 回答