__init__.py的作用

__init__.py 是一个特殊的python文件。一个文件夹中有这一个文件时,那么这个文件夹就会被视作一个python包。

一般来说,__init__.py 这个文件是空的,但是它也可以用来配置下当前这个python包,如指定包的版本,或者控制可见的符号,当使用from 包名 import *,包名就是__init__.py所在的文件夹名,星号处的值就是可以在这个文件里配置。比如现在__init__.py所在文件夹名为musicdump,__init__.py内容如下:

from musicdump.core import  MP3usicFile

__version__ = "1.0.0"

上面这个__init__.py文件,我们可以知道:

  • 当前包的版本是1.0.0,
  • musicdump包里还有一个模块core.py
  • 当用户可以使用from musicdump import MP3usicFile , MP3usicFile就是定义控制用这条命令导入时可见的符号。

__init__.py文件的一个重要用途就是表示当前文件夹是一个包,它是可以空的。 如果不为空,那么也会在包被导入时被执行。

在python3.3之前的版本,所有的python包都需要有这样一份文件。3.3之后就不再有这一要求了。因为importlib这个导入系统的核心模块已经可以自动侦测包,不需要__init__.py的帮助了。这就意味着我们可以创建一个目录,然后把模块放进去即可。

我们仍然可以使用这份文件去定义一些变量或其他的配置,它会在导入时被执行。

你可能感兴趣的:(Python,python)