Python 包管理从入门到精通:自定义包与第三方包安装全解析

文章目录

  • [一、什么是 Python 包?](#一、什么是 Python 包?)
  • [二、自定义 Python 包:从创建到使用](#二、自定义 Python 包:从创建到使用)
    • [2.1 如何创建自定义包?](#2.1 如何创建自定义包?)
    • [2.2 自定义包的导入方式](#2.2 自定义包的导入方式)
    • [2.3 踩坑:from 包名 import *失效?](#2.3 踩坑:from 包名 import *失效?)
  • 三、第三方包:安装与使用
    • [3.1 安装第三方包的工具:pip](#3.1 安装第三方包的工具:pip)
    • [3.2 验证第三方包是否安装成功](#3.2 验证第三方包是否安装成功)
    • [3.3 (拓展)在 PyCharm 中安装第三方包](#3.3 (拓展)在 PyCharm 中安装第三方包)
  • 四、总结

在 Python 开发中,包(Package)是组织代码、复用功能的核心机制。无论是自己封装工具模块,还是使用社区成熟的第三方库,掌握包管理都是提升开发效率的关键。本文将从自定义 Python 包和第三方包安装两个维度,结合实操案例深入讲解。

一、什么是 Python 包?

包是 Python 中模块的集合(一个包可以包含多个.py模块文件),用于将功能相近的代码归类管理,避免模块名冲突,同时让项目结构更清晰。
官方包 :Python 内置的标准库(如os、sys),无需额外安装即可直接导入。
自定义包 :自己编写的模块集合,用于项目内代码复用。
第三方包:非 Python 官方提供的社区开源库(如numpy、pandas),需手动安装后使用。

二、自定义 Python 包:从创建到使用

2.1 如何创建自定义包?

创建一个 Python 包只需两步:

新建一个文件夹(包名,如my_package);

在文件夹内创建__init__.py文件(空文件即可,用于标识该文件夹为 Python 包);

将功能模块(如my_module1.py、my_module2.py)放入该文件夹。

2.2 自定义包的导入方式

以 "包my_package包含my_module1.py(含函数info_print1())和my_module2.py(含函数info_print2())" 为例,常见导入方式有 3 种:
方式 1:全路径导入

直接通过 "包名。模块名" 导入,使用时需带完整路径:

python 复制代码
import my_package.my_module1
import my_package.my_module2

# 调用函数
my_package.my_module1.info_print1()
my_package.my_module2.info_print2()

方式 2:从包中导入指定模块

通过from 包名 import 模块名导入,使用时直接用模块名:

python 复制代码
from my_package import my_module1
from my_package import my_module2

# 调用函数
my_module1.info_print1()
my_module2.info_print2()

方式 3:从模块中导入指定函数

通过from 包名.模块名 import 函数名导入,直接使用函数名:

python 复制代码
from my_package.my_module1 import info_print1
from my_package.my_module2 import info_print2

# 调用函数
info_print1()
info_print2()

2.3 踩坑:from 包名 import *失效?

如果直接用from my_package import *导入包内所有模块,可能出现 "模块未定义" 的错误(如开头案例中my_module2无法识别)。

这是因为import *默认不会导入包内所有模块,需要在包的__init__.py中通过__all__变量显式指定允许被导入的模块:

python 复制代码
# 在my_package/__init__.py中添加:
__all__ = ["my_module1", "my_module2"]  # 允许被import *导入的模块列表

添加后,from my_package import *就能正常导入my_module1和my_module2了。

三、第三方包:安装与使用

第三方包是 Python 生态的核心优势(如科学计算numpy、数据分析pandas),但需要先安装才能使用。

3.1 安装第三方包的工具:pip

pip是 Python 内置的包管理工具,用于安装 / 卸载 / 管理第三方包。

打开命令提示符(CMD),输入以下命令:

安装完成后,会提示 "Requirement already satisfied"(若已安装)或 "Successfully installed"。

3.2 验证第三方包是否安装成功

安装后,可在 Python 交互环境中验证:

打开 CMD,输入python进入 Python 交互模式;

导入包并执行简单代码:

python 复制代码
import numpy
arr = numpy.array([1,2,3])
print(arr)  # 输出[1 2 3],说明安装成功

3.3 (拓展)在 PyCharm 中安装第三方包

如果使用 PyCharm 开发,也可以直接在 IDE 中安装包:

打开File > Settings > Project: 项目名 > Python Interpreter;

点击右上角的+号,搜索需要的包(如numpy);

选中包后点击Install Package,等待安装完成。

四、总结

自定义包:是模块的集合,通过__init__.py标识,支持多种导入方式;__all__变量可控制import *的导入范围。

第三方包:需通过pip安装,安装后可直接导入使用;PyCharm 也支持可视化安装。

相关推荐
刺客xs4 分钟前
Qt----事件简述
开发语言·qt
程序员-King.7 分钟前
【Qt开源项目】— ModbusScope-进度规划
开发语言·qt
syt_101316 分钟前
Object.defineProperty和Proxy实现拦截的区别
开发语言·前端·javascript
liu****16 分钟前
Python 基础语法(二):程序流程控制
开发语言·python·python基础
charlie11451419117 分钟前
如何快速在 VS2026 上使用 C++ 模块 — 完整上手指南
开发语言·c++·笔记·学习·现代c++
时空无限20 分钟前
Java Buildpack Reference
java·开发语言
大连好光景38 分钟前
Python打日志
运维·python·运维开发
serendipity_hky42 分钟前
【go语言 | 第2篇】Go变量声明 + 常用数据类型的使用
开发语言·后端·golang
syt_biancheng43 分钟前
博客系统全流程测试总结
python·selenium·测试用例·压力测试·postman
报错小能手1 小时前
STL_unordered_map
开发语言·c++·哈希算法