Python项目中所有包的克隆与统一部署【requirements.txt】

2024年8月20日 1087点热度 0人点赞 0条评论

目的:

基于Python的项目程序通常依赖于很多的库,这需要安装对应的包。在项目移植的时候,如果一个个重新安装会浪费时间。最好的办法是,能将本地开发的环境完整导出,这意味着包的类型和版本号要一致,这对于我们在新的机器上移植就极为方便。

这里我们采用requirements.txt的方式导入导出,实现环境的复刻。

requirements.txt文件格式

包名==版本号
包名==版本号
包名==版本号

requirements.png

导出本地的python环境

1 保存当前Python环境下的所有包到requirements.txt

pip freeze > requirements.txt

这将保存当前Python环境下的所有包,包括但不限于当前项目中的所有包,目标地址是当前目录下。

2 保存当前Python环境当前项目下的所有包到requirements.txt

# pipreqs包安装
pip install pipreqs
# 保存环境到当前目录
pipreqs ./ --encoding=utf8

注意:--encoding=utf8 是为了避免编码错误。

导入项目的python环境

pip install -r requirements.txt

如果直接安装到python环境下,可能会和先前的环境发生冲突,比如与先前环境有相同的包,但版本号不一致,由于只能选择一个,当多个项目切换的时候会导致某个项目难以运行。一种有效避免这种问题的方法是一个项目对应一个虚拟环境,这需要利用conda创建一个新的环境,将requirements.txt中的包安装到指定隔离的环境中:

pip install -r requirements.txt -i <隔离的环境>

yutong

这个人很懒,什么都没留下

文章评论