深入Python(2): __init__.py 用法
原文:http://www.2cto.com/kf/201204/129388.html
python的每個(gè)模塊的包中,都有一個(gè)__init__.py文件,有了這個(gè)文件,我們才能導(dǎo)入這個(gè)目錄下的module。
那么,__init__.py還有什么別的功能呢?
其實(shí),__init__.py里面還是可以有內(nèi)容的,我們?cè)趯?dǎo)入一個(gè)包時(shí),實(shí)際上導(dǎo)入了它的__init__.py文件。
我們可以再__init__.py文件中再導(dǎo)入其他的包,或者模塊。
[python]
import readers
import writers
import commands
import users
import meta
import auth
import admin
這樣,當(dāng)我們導(dǎo)入這個(gè)包的時(shí)候,__init__.py文件自動(dòng)運(yùn)行。幫我們導(dǎo)入了這么多個(gè)模塊,我們就不需要將所有的import語句寫在一個(gè)文件里了,也可以減少代碼量。
不需要一個(gè)個(gè)去導(dǎo)入module了。
__init__.py 中還有一個(gè)重要的變量,叫做 __all__。我們有時(shí)會(huì)使出一招“全部導(dǎo)入”,也就是這樣:
from PackageName import *
這時(shí) import 就會(huì)把注冊(cè)在包 __init__.py 文件中 __all__ 列表中的子模塊和子包導(dǎo)入
總結(jié)
以上是生活随笔為你收集整理的深入Python(2): __init__.py 用法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深入Python(1): 字典排序 关于
- 下一篇: Python推荐博客、网站学习