简单理解
就是一个.py文件
sys.path
查看模块查找路径
导入方式
- import 模块名
- import 模块名 as 别名
- from 模块名 import 功能名
- from 模块名 import 功能名 as 别名
- from 模块名 import *
all魔法属性
格式:__all__[功能名1,功能名2…]
注意
* 只影响*号的导入方式
* 格式是列表,功能名是字符串形式
模块运行
测试阶段,直接模块内部调用运行
__name__的值是__main__
所以可以用来测试模块代码被导入是调用运行
__name__的值是__模块名__
与上面的结合使用
包中的 __init__.py
- 提供all变量,限制*号形式导入
- 本包中的init.py文件可以实现批量导入
- 此文件被导入是会自动先执行,所以可以实现初始化操作等
- python2中必须存在,python3中可有可无,推荐存在
- 子包被导入,会先执行父包中的init.py文件