当一个文件夹有__init__时,这个文件夹就是一个package,
包也是对象,可以初始化
类里面有这个吧,代表可以初始化对象。这里也有这个意思-初始化这个包。
在__init__里你可以写函数,类,导入别的包,然后这些就是这个包的属性了。
例如:
test
| __init__
| a.py
| b.py
__init__.py:
print 111
def fuction():
print 'dsdsdsd'
class CCCCC(object):
xxxxx
这时在另外的一个地方(领完需要导入test的地方)
import test
test.function()
ccc = test.CCCCC()
所以当你在导入一个模块时,要么在包下,要吗不是,当在包下时,每次导入都会初始化这个__init__,同一个地方只会初始化一次。你就可以在导入模块时,预先干一些事情。