当前位置: 首页>编程语言>正文

【Python】Python 包 ① ( Python 包引入 | Python 包概念 | Python 包结构 | 创建 Python 包 | 导入 Python 包 )


文章目录

  • 一、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 源码文件 ,

如下图所示 :

【Python】Python 包 ① ( Python 包引入 | Python 包概念 | Python 包结构 | 创建 Python 包 | 导入 Python 包 ),【Python】Python 包 ① ( Python 包引入 | Python 包概念 | Python 包结构 | 创建 Python 包 | 导入 Python 包 )_python,第1张

上图对应的文件目录结构如下 :

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 包 ① ( Python 包引入 | Python 包概念 | Python 包结构 | 创建 Python 包 | 导入 Python 包 ),【Python】Python 包 ① ( Python 包引入 | Python 包概念 | Python 包结构 | 创建 Python 包 | 导入 Python 包 )_Python包_02,第2张

输入 Python 包名称 , 然后点击回车 , 创建 Python 包 ;

【Python】Python 包 ① ( Python 包引入 | Python 包概念 | Python 包结构 | 创建 Python 包 | 导入 Python 包 ),【Python】Python 包 ① ( Python 包引入 | Python 包概念 | Python 包结构 | 创建 Python 包 | 导入 Python 包 )_开发语言_03,第3张

创建完成后 , 自动生成了一个 my_package 目录 , 该目录下自动生成了一个 __init__.py 文件 ;

【Python】Python 包 ① ( Python 包引入 | Python 包概念 | Python 包结构 | 创建 Python 包 | 导入 Python 包 ),【Python】Python 包 ① ( Python 包引入 | Python 包概念 | Python 包结构 | 创建 Python 包 | 导入 Python 包 )_Python包_04,第4张


5、导入 Python 包


使用 from / import 语句 导入 包 或 包中的模块 ;

  • import 导入包 : 导入后 , 可以 通过 包名.模块名.功能名 访问指定功能 ;
import 包名.模块名
  • from 导入包 :
from 包名 import 模块名


要导入 my_package 包中的 my_module1 模块,可以使用如

import my_package.my_module1

from my_package import my_module1

代码 ;



https://www.xamrdz.com/lan/5r31967367.html

相关文章: