__init__.py文件的作用

来源:互联网 发布:云杉网络监控 编辑:程序博客网 时间:2024/05/16 13:04
__init__.py文件的作用是将文件夹变为一个python包,每个包目录下都会有一个__init__.py文件,这个文件是必须存在的,否则,python就把这个目录当成普通目录,而不是一个包。__init__.py可以是一个空文件,也可以有python 代码。我们在导入一个包时,实际上导入了它的__init__.py文件,并且这个文件会自动执行,所以我们可以在__init__.py文件中做一些包导入时的一些初始化工作。比如,我们可以在__init__.py文件中导入其他模块或者包:
# package_a# __init__.pyimport mathimport urllibimport matplotlibimport gensim
如上,我们在导入package_a 时,__init__.py 被执行,那么上面的import包也会被导入。另外,__init__.py 中还有一个重要的变量,叫做 __all__。有时候我们会把一个模块中的所有内容导入,如使用

from PackageName import *

这时 import 就会把注册在包 __init__.py 文件中 __all__ 列表中的子模块和子包导入到当前作用域中来。比如:
# __init__.py__all__ = ["Module1", "Module2", "subPackage1", "subPackage2"]
0 0