我正在开发一个python包。我使用pip freeze > requirements.txt
将所需的包添加到requirement.txt文件中。然而,我意识到有些包,而不是包版本,前面有一些路径。
numpy==1.19.0
packaging==20.4
pandas @ file:///opt/concourse/worker/volumes/live/38d1301c-8fa9-4d2f-662e-34dddf33b183/volume/pandas_1592841668171/work
pandocfilters==1.4.2
然而,在环境中,我得到了:
>>> pandas.__version__
'1.0.5'
你知道如何解决这个问题吗?
这似乎是20.1
版本中pip freeze
的一个开放问题,当前的解决方法是使用:
pip list --format=freeze > requirements.txt
简而言之,这是由于更改了pip freeze
的行为,以包括从直接URL引用安装的分发版的直接引用。
你可以在GitHub:上阅读更多关于这个问题的信息
pip冻结不显示安装的版本
输出";pip冻结";以及";pip-list--format=freeze";通过Direct URL 安装的软件包不同
更好地冻结从直接URL引用安装的分发