1. 什么是第三方包
-
官方标准库:Python 自带,直接 import,不需要额外安装,如
os、sys、json、random -
第三方包:第三方开发者编写,不属于 Python 内置,需要手动安装之后才能导入使用。
-
PyPI:Python 第三方包公共仓库,所有 pip 安装的包都来源于此。
|------|-----------|----------------|---------------------------|
| 类别 | 来源 | 是否需要 pip 安装 | 导入方式例子 |
| 标准库 | Python 自带 | 不需要 | import os、import json |
| 第三方包 | PyPI 社区 | 需要 pip install | import requests |
2. pip 包管理工具(终端 / 命令行执行)
bash
# 安装包
pip install requests
# 指定版本安装
pip install requests==2.31.0
# 升级包
pip install --upgrade requests
# 卸载包
pip uninstall requests
# 查看已安装全部第三方包
pip list
# 查看某个包详细信息
pip show requests
# 将当前环境所有包导出到依赖文件
pip freeze > requirements.txt
# 从依赖文件批量安装
pip install -r requirements.txt
注意点
多 Python 版本环境,部分机器需要使用
pip3代替pip国内下载慢,可以配置国内镜像源加速下载,临时使用清华源
bashpip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple
3. 使用第三方包代码示例
示例 1:requests 网络请求
第一步终端安装
bash
pip install requests
python 代码
python
import requests
# 发送get请求
resp = requests.get("https://httpbin.org/get")
print("状态码:", resp.status_code)
print("响应文本:", resp.text)
# json格式解析
data = resp.json()
print(data)
示例 2:pillow 图像处理
安装
bash
pip install pillow
python
from PIL import Image
# 打开图片
img = Image.open("test.jpg")
# 获取图片宽高
print(img.size)
# 缩放
new_img = img.resize((200,200))
new_img.save("out.jpg")
4. requirements.txt 依赖文件
作用:记录项目依赖的第三方包和版本,项目迁移、换环境直接一键安装全部依赖。
文件内容示例 requirements.txt
python
requests==2.31.0
pillow==10.2.0
numpy==1.26.2
安装命令:
bash
pip install -r requirements.txt
5. 第三方包导入底层原理
-
pip 安装第三方包,会把包文件放到 Python 环境的 site‑packages 文件夹。
-
import xxx导入时,Python 模块搜索路径会自动查找site‑packages目录。 -
找不到包:大概率环境不匹配,pip 安装到 A 环境,代码运行在 B 环境。
6. 常见问题
-
包名和导入名不一定相同
-
pillow:pip 安装名字
pillow,代码导入写from PIL import Image -
安装名 ≠ import导入名
,看文档,不要直接拿pip名字去import
-
-
虚拟环境:不同项目需要不同版本包,推荐使用虚拟环境隔离,避免包版本冲突。
- 虚拟环境隔离是指:为不同 Python 项目创建独立的运行环境,各个项目的第三方包相互独立、互不干扰,解决包版本冲突问题,实现项目环境隔离。
-
不要把项目脚本命名和第三方包同名 ,例如
requests.py,会直接覆盖第三方库,造成导入异常。 -
离线环境:无法联网机器,提前下载
.whl包文件本地安装bashpip install xxx.whlwhl是 Python 第三方包的 安装压缩包, 相当于手机的「apk 安装包」、电脑的「exe 安装程序」,是 PyPI 官方提供的离线安装文件
7. 虚拟环境简单说明
-
作用:给每个项目独立 Python 环境,各个项目第三方包互不干扰。
-
python 内置模块 venv,无需额外安装,属于标准库 。模块是工具,而虚拟环境是工具造出来的东西。
bash
# 创建虚拟环境
python -m venv my_env
# windows激活
my_env\Scripts\activate
# linux/mac激活
source my_env/bin/activate
# 退出虚拟环境
deactivate