亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> Python

Python 包:结构、导入与最佳实践

Python 包

学习如何使用 Python 包组织不断增长的代码库,以及如何高效导入自定义或第三方模块。

视频:Python 包——组织你的代码

什么是包?

正如我们将磁盘上的文件归类到文件夹以保持清晰,Python 使用包来组织相关模块。包本质上是一个包含 __init__.py 文件的目录——这会告诉 Python 将该文件夹视为一个命名空间。

随着项目扩大,将相似模块放在同一个包中能让项目保持可控且自文档化。包还可以包含子包,这与目录嵌套的方式一致。

例如,一个游戏项目的结构可能如下:

Python 包:结构、导入与最佳实践

从包导入模块

模块通过点(.)表示法导入。要从 Game/Level 包导入 start.py,使用:

import Game.Level.start

如果 start.py 定义了函数 select_difficulty(),则通过完整命名空间调用:

Game.Level.start.select_difficulty(2)

为减少冗长,可将模块导入本地命名空间:

from Game.Level import start

现在可直接调用:

start.select_difficulty(2)

甚至可直接导入函数:

from Game.Level.start import select_difficulty

然后直接调用:

select_difficulty(2)

虽然简洁,但函数级导入若不同模块暴露同名符号可能导致命名冲突。使用完整包路径能保持命名空间显式且更安全。

Python 通过搜索 sys.path 中列出的目录来解析包导入,这与常规模块相同。

Python

  1. 精通Python数据类型:实战指南
  2. 精通Python运算符:全面指南
  3. 精通Python Pass语句:实战指南
  4. 精通Python函数参数:位置、关键字与默认参数
  5. 精通 Python 字典:创建、操作与进阶技巧
  6. 精通 Python 迭代器:工作原理与自定义构建
  7. Python 闭包详解:嵌套函数如何捕获变量
  8. 精通 Python datetime:日期、时间与时区实战指南
  9. 精通 Python time.sleep():最佳实践、多线程与实战案例
  10. Python 语言概览:高级、可读、交互式与面向对象
  11. Python 数字类型详解:不可变数值数据的操作与数学函数
  12. Python 字符串完全指南:创建、访问、格式化与内置方法大全