大家好,我是正在实战各种AI项目的程序员晚枫。
今天聊一个让新手困惑、老手也容易忽视的话题——Python的模块与包。
你可能写过很多Python文件,但当项目变大时,代码变得混乱不堪:函数找不到定义、循环导入报错、同名文件冲突…
这篇文章总结了我在项目实战中总结的5个组织原则,帮你写出井井有条的Python代码。
概念1:模块就是.py文件
什么是模块?
任何一个.py文件都是一个模块。
1 | # math_utils.py(这是一个模块) |
如何使用模块?
1 | # 方式1:import整个模块 |
概念2:包是模块的集合
什么是包?
包含__init__.py文件的文件夹就是一个包。
1 | my_project/ |
如何使用包?
1 | # 导入包中的模块 |
原则1:合理划分模块
按功能划分
1 | project/ |
每个模块的职责要单一
1 | # good: 只做文件操作 |
原则2:避免循环导入
什么是循环导入?
1 | # a.py |
解决方案
1 | # 方案1:合并模块 |
原则3:使用相对导入
绝对导入 vs 相对导入
1 | # 绝对导入(从项目根目录开始) |
什么时候用相对导入?
- 包内部的模块之间互相引用
- 移动包的位置时不需要修改导入语句
原则4:善用init.py
init.py的作用
1 | # my_package/__init__.py |
原则5:管理第三方依赖
requirements.txt
1 | # requirements.txt |
生成和使用
1 | # 生成依赖清单 |
虚拟环境(必学)
1 | # 创建虚拟环境 |
实战:创建一个可发布的包
1 | my_tool/ # 项目根目录 |
1 | # setup.py |
推荐:AI Python零基础实战营
想系统学习Python工程化开发?
课程内容:
- ✅ Python基础语法
- ✅ 模块与包管理
- ✅ 项目结构设计
- ✅ 实战项目练习
🎁 限时福利:送《Python编程从入门到实践》实体书
👉 点击了解详情
相关阅读
PS:好的代码组织能让项目更易维护。记住:高内聚、低耦合。
