包(模块包) package
包是将模块以文件夹的组织形式进行分组管理的方法
作用:1、将一系列模块进行分类管理,有利于访问命名冲突
2、可以在需要时加载一个或部分模块,而不是全部模块
__init__.py 文件
__init__.py 是常规包内必须存在的文件
__init__.py 会在包加载时被自动调用
作用:1、编写此包的内容
2、在内部填写包的文档字符串
__init__.py 内的 __all__列表:
作用:用来记录此包中有哪些包或模块需要在from import *语句导入时被导入。
说明:__all__列表只在from xxx import *语句中起作用
包的导入语法:
#同模块的导入规则相同
import 包名 [as 包别名]
import 包名.模块名 [as 模块新名]
from 包名 import 模块名[as 模块新名]
from 包名.子包名 import 模块名[as 模块新名]
from 包名.子包名.模块名 import 属性名 [as 属性新名]
from 包名 import *
from 包名.子包名 import *
包的相对导入:
是指包内模块的相互导入
语法:
from 相对路径包或模块import 属性或模块
或
from 相对路径包或模块 import *
说明:
包的相对导入不能用于 import xxx 语句中
相对路径:
·代表当前目录
··代表上一级目录
···代表上二级目录 以此类推
注:相对导入时不能超出包的外部。