1、什么是包
包是模块的一种形式,包的本质就是一个含有__init__.py文件的文件夹
(文件的作用就是用来存放文件的,包内所有的文件都是被导入用的)
2、如何用包
导入包就是在导包下的__init__.py
import 包
包.名字
from...import...
导入方式:
1、绝对导入:相对于执行文件所在的文件夹
2、相对导入:相对于当前被导入的文件(只能用于模块直接的互相导入)‘.’,'..'
主要的问题:
1、包内所有的文件都是被导入使用的,而不是被直接运行的
2、包内部模块之间的导入可以使用绝对导入(以包的根目录为基准)与相对导入(以当前被导入的模块为基准)
#推荐使用相对导入,这样即使根目录改变也没有关系
3、当文件是执行文件时,无法在该文件内使用相对导入(即只有在文件被当做模块导入时,才 能使用相对导入)
4、凡是在导入时带点的,点的左边必须是一个包
import aaa.bbb.m3.f3() #错误,m3不是包,,如果运行则可以