模块
模块的简介
为什么使用模块
- 代码重用
- 系统命名空间的划分
- 实现共享服务和数据
Python程序构架
import如何工作
导入是运行时一个运算
第一次导入时
- 找到模块文件
- 编译成位码
- 执行模块的代码来创建其所定义的对象
后续调用直接在内存中 拿到定义好的对象就行了
如何找到模块文件
- 找程序的主目录(即入口程序的目录)
- 找Python的PATH
- 标准库目录
- 找任何.pth文件的内容(配置目录文件)
导入的文件扩展名问题
- 找.py源代码文件
- .pyc 编译后的字节码文件(比较py和pyc的大小和时间戳,如果一样就运行pyc不一样就重新生成pyc)
- Linux .so Win .dll .pyd 编译好的扩展文件
- 压缩文件JAVA的类等