一、包
1、什么是包
包是模块的一种形式,包的本质就是一个含有__init__.py文件的文件夹
2、如何用:
导入包的过程:
import aaa
1、创建一个包的名称空间
2、执行包下的__init__.py文件将执行过程中产生的名字存放于包名称空间中(即,包名称空间中存放的名字都是来自与自己下面__init__.py 文件的)
3、在当前执行文件中拿到一个名字aaa,aaa是指向包的名称空间的
注意问题:
1、包内的所有文件都是被导入使用的,而不是直接运行的
2、包内部模块之间的导入可以使用绝对导入(以包的根目录为基准)与相对导入(以当前被导入的模块所在的目录为基准)
推荐相对导入
3、当文件是执行文件时,无法在该文件内用相对导入的语法
只有在文件被当作模块导入时该文件内才能使用相对导入的语法
4、凡是在导入时带点的,点左边必须都是一个包
相对导入
. 代表当前被导入文件所在的文件夹
..代表当前被导入文件所在文件夹上一级