我正在寻找一种使用 pip 安装包的方法,并将该包的版本信息写入我项目的 requirements.txt 文件。对于那些熟悉 npm ,它本质上就是 npm install --save
所做的。
使用 pip freeze > requirements.txt
效果很好,但我发现我忘记运行它,或者我可能不小心包含了我为测试而安装但决定不使用的未使用包使用。
所以下面的伪代码:
$ pip install nose2 --save
会产生一个 requirements.txt 文件,其中包含:
nose2==0.4.7
我想我可以调整 save 的输出来获取版本号,但我希望有更简单的方法。
最佳答案
要获取版本信息,实际上可以在安装后选择性地使用 pip freeze 。这是一个可以满足您要求的功能:
pip_install_save() {
package_name=$1
requirements_file=$2
if [[ -z $requirements_file ]]
then
requirements_file='./requirements.txt'
fi
pip install $package_name && pip freeze | grep -i $package_name >> $requirements_file
}
注意 grep 命令的 -i。 Pip 对包名称不区分大小写,因此您可能会想要这样。
关于python - 安装一个包并使用 pip 写入 requirements.txt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20006000/