一、模块基本概念和导入
以.py结尾的文件都是模块
命名数字字母下划线组成 标识符不能以数字开头
同一文件夹下
import 模块名
使用时必须 模块名.全局变量/函数/类
二、模块别名
import 模块名 as 模块别名
三、模块局部导入
from 模块名 import 工具名
直接访问
不需要通过模块名.方式访问
四、模块局部导入同名工具
后导入会覆盖先导入
from 模块名 import 工具名 as 工具别名
五、导入模块所有工具
不需要通过模块名.方式访问
from 模块名 import *
六、模块搜索顺序
自定义模块和系统模块不要重名
优先从当前目录搜索
其次从python系统目录搜索
print(模块名.__file__)
输出当前加载模块保存位置
七、开发原则
当模块被导入时 没有被缩进的代码会被执行
直接执行的代码不是向外界提供工具 不需要执行
测试代码写在
八、属性兼顾导入和测试
当被其他文件导入时__name__保存模块名
如果执行当前程序__name__就是__main__
if __name__ == "__main__":
def main():
pass
if __name__ == "__main__":
main()
九、包的概念
包是含有多个模块的特殊目录
包有特殊文件__init__.py
包与变量命名方式已知 小写字母和下划线 也可以用数字但不要数字开头
import导入所有包
建立包
右键 new directory 并建立__init__.py
右键 new python package
十、封装与__init__
__init__.py需要指定对外界提供模块列表
from . import 模块名