python模块是一个单独的文件,python的包就是存放模块的包。
如果把包比喻成动物的话,那么模块就可以看成是羊、狗、牛等具体的动物。也就像是模块与方法的关系。
包的好处就是可以避免模块重名,不同的包可以含有相同名字的模块,不会冲突,就比如:animal包里面含有pig模块,poultry包里面也含有pig这个包,这样因为包的名称不同,即使模块重名也没关系,调用时用“包点模块名称”即可
一:包的目录结构
animal/ 动物包(顶层)
----------| __init__.py 初始化文件
----------|pig/ pig包
----------|----------|__init__.py
----------|----------|eat.py
----------|----------|age.py
----------|dog/ dog包
----------|----------|__init__.py
----------|----------|eat.py
----------|----------|age.py
其中__init__.py是初始化文件,并且只有含有__init__.py文件才能认作是一个包,换句话说就是包必须含有__init__.py文件。
二、包结构中模块的引入
import 包名[.子包名].模块名实例如下:
import animal.dog.eat
上句程序就是引入animal包中子包dog里面的eat模块,如果调用其中的方法可以用:
import animal.dog.eat animal.dog.eat.方法名()另外模块的引入使用也可以使用from import,实例如下:
from animal.dog import eat eat.方法名()
python2019-10-28
HTML2019-12-08
python2019-10-02
python2019-10-25
HTML2020-03-26
HTML2020-01-21