目录
[Option1: pip freeze](#Option1: pip freeze)
[Option2: pipreqs工具](#Option2: pipreqs工具)
[Option1: requirements.txt](#Option1: requirements.txt)
[Option2: myenv.yml](#Option2: myenv.yml)
Python提供了强大的模块功能,能够方便开发者更加易于进行包的管理。pip/conda提供了生成requirements.txt 或myenv.yml的功能,可以方便开发者在新的环境下进行一步式的依赖项安装。
一、pip
Option1: pip freeze
pip freeze会将当前PC环境下所有的安装包都进行生成,再进行安装的时候会全部并安装很多没有的包,耗时耗力其实是不可取的。
导出环境
终端执行下面命令会在当前目录生成requirements.txt文件。
bash
pip freeze > requirements.txt #可能会丢失依赖包的版本号
# 或者
pip list --format=freeze> requirements.txt
导入环境
使用前面命令生成出来的requirements.txt,可以根据这个文件下载所有依赖。
bash
pip install -r requirements.txt
# 临时换源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
Option2: pipreqs工具
使用pipreqs,这个工具的好处是可以通过对项目目录的扫描,发现使用了哪些库,生成依赖清单。
导出环境
使用pipreqs需要提前安装。
step1:安装
bash
pip install pipreqs
step2:使用
在Python项目的根目录下 使用 pipreqs ./
bash
pipreqs ./ --encoding=utf8
导入环境
使用前面命令生成出来的requirements.txt,可以根据这个文件下载所有依赖。
bash
pip install -r requirements.txt
# 临时换源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
二、conda
Option1: requirements.txt
导出环境
需要先切换到要导出的虚拟环境里面再执行命令。
bash
conda list -e > requirements.txt
导入环境
需要先切换到要导入的虚拟环境里面再执行命令。
bash
conda install --yes --file requirements.txt
Option2: myenv.yml
导出环境
bash
#获得环境中的所有配置
conda env export --name myenv > myenv.yml
导入环境
需要先切换到要导入的虚拟环境里面再执行命令。
bash
#重新还原环境
conda env create -f myenv.yml