[英]pip freeze without Conda packages
我已经使用 Conda 一段时间了,它非常有帮助。 但是,最近发生在我身上的是,当我运行命令时
pip freeze > requirements.txt
将我的项目传递到另一台笔记本电脑, requirements.txt文件充满了 Conda 包,这样当我尝试使用命令恢复它们时
pip install -r requirements.txt
它找不到它们并且失败了。
我的问题是,是否可以在 pip 命令不考虑 Conda 包的情况下执行pip freeze
?
在一天结束时,我只使用 Conda 创建了单独的 Python 个工作区。
conda list
命令将在Channel
列中指示带有pypi
的 PyPI 包。 因此,一种快速的方法是对此进行过滤,例如,
conda list | awk '$4 ~ /pypi/ { print $1 "==" $2 }'
应该提到的是,共享环境的更惯用的工作流程是使用conda env export
,它还从 PyPI 中捕获(和分离)包。 有关详细信息,请参阅有关共享环境的 Conda 文档。
如果你很确定 Anaconda 对于这个项目来说不是必需的,你可以从 requirements.txt 中手动删除它的包。
Conda 包通常用 @ 定义。
这是删除它们的代码:
Linux:
pip freeze | grep -v "@" > requirements.txt
Windows
pip freeze | findstr /v "@" > requirements.txt
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.