Python依赖管理基础概念
Python依赖管理指的是对项目中使用的第三方Python包进行统一管理,包括安装、版本控制、环境隔离等操作。如果缺少规范的依赖管理,不同开发者的环境可能因为包版本不一致出现运行报错,项目迁移到其他机器时也需要逐个手动安装依赖,效率极低。

pip工具介绍
pip是Python自带的包管理工具,默认随Python 3.4及以上版本安装,用于从Python Package Index(PyPI)下载、安装、升级和卸载第三方包。可以通过下面的命令检查pip是否安装以及版本信息:
# 查看pip版本 pip --version # 如果上述命令报错,可以尝试使用pip3 pip3 --version
requirements文件介绍
requirements文件是一个纯文本文件,通常命名为requirements.txt,里面记录了项目依赖的所有Python包及其对应的版本号。通过这个文件,其他开发者可以快速复现项目的依赖环境,不需要逐个询问需要安装哪些包。
pip常用操作详解
安装Python包
使用pip安装包的基本命令是pip install 包名,如果需要指定版本,可以在包名后加上==版本号:
# 安装最新版的requests包 pip install requests # 安装指定版本的requests包 pip install requests==2.28.1 # 安装多个包 pip install requests flask==2.2.5
升级与卸载Python包
如果需要升级已安装的包,可以使用-U参数,卸载包则使用uninstall命令:
# 升级requests到最新版本 pip install -U requests # 卸载requests包 pip uninstall requests
查看已安装的包
可以通过以下命令查看当前环境中已经安装的所有Python包及其版本:
# 列出所有已安装的包 pip list # 查看某个包的详细信息 pip show requests
requirements文件使用方法
生成requirements文件
当项目开发完成后,可以通过pip freeze命令将当前环境的所有依赖导出到requirements文件中:
# 将当前环境的所有依赖导出到requirements.txt pip freeze > requirements.txt
生成的requirements.txt内容类似下面这样:
requests==2.28.1 flask==2.2.5 numpy==1.24.3
使用requirements文件安装依赖
当其他开发者拿到项目代码和requirements.txt后,只需要执行下面的命令就可以一键安装所有依赖:
# 从requirements.txt安装所有依赖 pip install -r requirements.txt
维护requirements文件
在开发过程中如果新增了依赖包,需要手动将包名和版本号添加到requirements.txt中,或者重新执行pip freeze > requirements.txt更新文件。如果某个依赖不再需要,除了卸载包之外,也要记得从requirements.txt中删除对应的记录,避免后续安装不必要的包。
常见问题与注意事项
- 如果同时使用Python2和Python3,建议使用
pip3命令操作Python3的依赖,避免版本混淆 - 不要将虚拟环境目录下的依赖全部导出到requirements.txt,应该只记录项目直接依赖的包,避免冗余
- 如果依赖包需要指定安装源,可以在安装命令后添加
-i 源地址参数,例如使用国内镜像源加速安装:pip install -r requirements.txt -i https://pypi.ipipp.com/simple/
简单示例演示
下面是一个简单的Flask项目依赖管理示例,首先创建项目并安装依赖:
# 创建项目目录 mkdir flask_demo cd flask_demo # 安装flask pip install flask==2.2.5 # 导出依赖 pip freeze > requirements.txt
然后编写简单的Flask应用代码:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello Python Dependency Management'
if __name__ == '__main__':
app.run(debug=True)
其他开发者拿到这个项目后,只需要执行pip install -r requirements.txt就可以安装好所有依赖,直接运行代码即可启动服务。
piprequirementsPython依赖管理Python包管理修改时间:2026-07-18 17:06:24