文章目录
- 一、Python 包简介
- 1、Python 包引入
- 2、Python 包概念
- 3、Python 包结构
- 4、创建 Python 包
- 5、导入 Python 包
一、Python 包简介
1、Python 包引入
之前 介绍了 Python 模块 , 每个 Python 源码文件 , 都可以定义为一个 Python 模块 ;
如果 定义的 Python 源码模块很多 , 有几百上千个 , 则会出现管理繁琐 , 混乱的问题 ;
这里引入 新的代码结构 " Python 包 " ;
2、Python 包概念
Python 包 概念 : 包是 Python 模块 Module 的扩展 , 将若干 相关的 Module 模块 组织起来 形成一个 Python 包 , 可以更好地 组织 和 管理 Python 代码 ;
在 Python 包中 可以 定义 变量 / 函数 / 类 等功能 , 并在不同的模块中使用它们 ;
在 Python 中 , 一个模块就是一个 Python 源码文件 , 变量 / 函数 / 类 可以定义在不同的 源码中 , 将这些 源码 统一组织在一个包中 , 可以 更好地 组织 和 管理 Python 代码 ;
除了 自定义 Python 包之外 , Python 还提供了 Python 标准库 和 其他人编写的第三方 Python 包 来扩展 Python 的功能 ;
Python 标准库
- os
- sys
- datetime
- math
第三方包可以通过 Python Package Index ( PyPI ) 进行 下载 和 安装 , 如 :
- numpy
- pandas
- Flask
3、Python 包结构
Python 包 组成 :
- 文件夹 / 目录
__init__.py
的文件
文件夹 / 目录 的名称必须是 唯一的 , 该名称可使用 横线 -
/ 下划线 _
, 不能 与 Python 中其他已经存在的名称发生冲突 ;
Python 包结构示例 :
- 创建一个名为 my_package 的包
- 包含 6 个模块 module1 ~ module6
将这 6 个模块放在一个名为 my_package 的 目录中 , 并在该 目录中 添加一个名为 __init__.py
的 Python 源码文件 ,
如下图所示 :
上图对应的文件目录结构如下 :
my_package/
├── __init__.py
├── my_module1.py
├── my_module2.py
├── my_module3.py
├── my_module4.py
├── my_module5.py
└── my_module6.py
4、创建 Python 包
右键点击 PyCharm 中的 Python 工程根目录 , 选择 " New / Python Package " 选项 ,
输入 Python 包名称 , 然后点击回车 , 创建 Python 包 ;
创建完成后 , 自动生成了一个 my_package 目录 , 该目录下自动生成了一个 __init__.py
文件 ;
5、导入 Python 包
使用 from / import 语句 导入 包 或 包中的模块 ;
- import 导入包 : 导入后 , 可以 通过
包名.模块名.功能名
访问指定功能 ;
import 包名.模块名
- from 导入包 :
from 包名 import 模块名
要导入 my_package 包中的 my_module1 模块,可以使用如
import my_package.my_module1
或
from my_package import my_module1
代码 ;