包是一个分层次的文件目录结构,它定义了一个由模块及子包,和子包下的子包等组成的 Python 的应用环境。
考虑一个在 Phone 目录下的 pots.py 文件。这个文件有如下源代码:
#coding=utf-8
#!/usr/bin/python
def Pots():
print "I'm Pots Phone"
同样地,我们有另外两个保存了不同函数的文件:
现在,在 Phone 目录下创建 file __init__.py:
当你导入 Phone 时,为了能够使用所有函数,你需要在 __init__.py 里使用显式的导入语句,如下:
from Pots import Pots
from Isdn import Isdn
from G3 import G3
当你把这些代码添加到__init__.py之后,导入 Phone 包的时候这些类就全都是可用的了。
#coding=utf-8
#!/usr/bin/python
# Now import your Phone Package.
import Phone
Phone.Pots()
Phone.Isdn()
Phone.G3()
以上实例输出结果:
I'm Pots Phone
I'm 3G Phone
I'm ISDN Phone
如上,为了举例,我们只在每个文件里放置了一个函数,但其实你可以放置许多函数。你也可以在这些文件里定义 Python 的类,然后为这些类建一个包。
联系客服