Python 包 __init__.py
作用
-
包的初始化
Python首次導(dǎo)入某個(gè)目錄時(shí)零如,會(huì)自動(dòng)執(zhí)行該目錄下
__init__.py
文件所有程序的代碼芳撒。這類(lèi)文件就是放置包類(lèi)文件所需要初始化的代碼的場(chǎng)所。 -
模塊命名空間的初始化
在包導(dǎo)入模型中芙代,腳本內(nèi)的目錄路徑濒持,在導(dǎo)入后會(huì)變成真實(shí)的嵌套對(duì)象路徑。比如翼闹,在包
test
的__init__.py
中定義了a = 1
,那么蒋纬,在我們import test
之后猎荠,可以得到>>import test >>test.a 1
-
from*語(yǔ)句的行為
可以在
__init__.py
中使用__all__
列表定義目錄以from package import *
導(dǎo)入時(shí)坚弱,是導(dǎo)入哪些模塊。若定義了__all__ = ["Module1", "Module2", "subPackage1", "subPackage2"]
关摇,當(dāng)使用from package import *
時(shí)荒叶,就會(huì)默認(rèn)導(dǎo)入"Module1", "Module2", "subPackage1", "subPackage2"
模塊。