标签:init 一个 执行 基本 __init__ file rom pre import
__init__.py的基本作用:当一个包被导入的时候,那么__init__.py文件将首先被执行,而且是被python自动的去执行。
例:
在t包的 __init__.py定义一个变量
a=‘This is __init__.py file‘ print(a)
在seven包建模块c11.py,在c11.py写入代码
import t
在终端运行c11.py结果:<<<This is __init__.py file
包的机制非常有用在项目中通常会在__init__.py里面做包和模块的初始化工作,这个是她的应用场景。
思考如果导入的不是t包,而是t下面的模块或者是模块下面的某一个变量__init__.py文件会自动运行吗?
t包下定义一个模块c7.py
__all__=[‘a‘,‘c‘] a=2 c=3 d=4
我们在c11.py中换一种写法:
from t.c7 import a
在终端运行c11.py结果:<<< This is __init__.py file
所以说无论是导入的包还是导入的包下面的某一个模块的变量python都会自动的运行__init__.py文件
标签:init 一个 执行 基本 __init__ file rom pre import
原文地址:http://www.cnblogs.com/Whambang/p/8006667.html