一、简介
如果不同的人编写的模块名相同怎么办?为了避免模块名冲突,Python 又引入了按目录来组织模块的方法,称为包(Package)
二、创建包的步骤
1.创建一目录为包名;
2.在该文件夹下创建__init__.py文件存放包的信息,该文件内容可以为空;
3.根据需要存放脚本文件,已编译的扩展及子包;
4.可以用import,import as,from import等语句导入模块和包;
[root@python code6]# mkdir mypac #建立包
[root@python code6]# cd mypac/
[root@python mypac]# vim hello.py #在包中建立hello模块
def hello():
print "hello"
[root@python mypac]# vim world.py #在包中建立world模块
def world():
print "world"
[root@python mypac]# vim __init__.py #创建__init__.py文件并添加以下内容来引用hello和world模块(这个文件也可以为空,只不过在后面调用的时候需要import mypac.hello和import mypac.world才能将包里面的模块调用了)
import hello
import world
[root@python mypac]# cd ..
[root@python code6]# ipython
...
In [1]: import mypac #调用mypac包
In [2]: mypac.hello.hello() #执行包中的模块
hello
In [3]: mypac.world.world()
world
[root@python code6]# cd mypac/ #进到包目录,可以看到在被调用之后生成了相应的.pyc文件
[root@python mypac]# ls
hello.py __init__.py world.py
hello.pyc __init__.pyc world.pyc