模块的核心作用(回顾)
- 封装代码:按功能拆分代码,便于阅读、测试和维护
- 代码重用:封装通用功能(如发送邮件),导入即可调用,避免重复编写
关键语法:if __name__ == "__main__"
- 存在意义:区分模块直接运行和被导入两种场景
- 核心原理
- 模块直接运行时,内置变量
__name__的值为__main__ - 模块被导入时,内置变量
__name__的值为模块名
- 模块直接运行时,内置变量
- 实际应用:模块内的测试代码放在该判断语句内
- 直接运行模块 → 执行测试代码
- 模块被导入 → 不执行测试代码,避免干扰主程序
模块搜索路径
- 概念:Python导入模块时,会在预定义的目录列表中查找
.py文件 - 查看路径:导入
sys模块 →print(sys.path)(返回目录列表) - 路径相关操作
- 默认方案:模块与主程序放在同一文件夹,可直接导入
- 自定义路径:通过
sys.path.append("自定义目录路径")添加搜索路径 - 推荐存放位置:
site-packages文件夹(Python默认的第三方模块存放目录)
包(Package):模块的组织方式
- 存在意义:解决大量模块的分类存放和命名冲突问题
- 创建包的步骤
- 新建文件夹(文件夹名 = 包名)
- 在文件夹内创建
__init__.py文件(可空,用于标识该文件夹为Python包) - 将相关模块放入该文件夹
- 导入包内模块的语法:
import 包名.模块名- 示例:
import m1.temperature_conversion
- 示例: