所以我使用以下命令创建了 requirements.txt 文件:
pip list --format=freeze > requirements.txt
并且其中一个软件包将其作为版本: 设置工具==52.0.0.post20210125
为什么会这样? 当我在云平台上部署我的项目时,这会不会出错。
答案 0 :(得分:2)
来自虚拟环境:
$ pip list --format=freeze > pip_list.txt
$ pip freeze > pip_freeze.txt
$ diff pip_list.txt pip_freeze.txt
84d83
< pip==21.1.3
124d122
< setuptools==57.1.0
答案 1 :(得分:1)
正如@Corralien 指出的那样,拥有发布后版本的东西并不奇怪:https://www.python.org/dev/peps/pep-0440/#version-scheme
发布后通常是为了对已发布的包进行一些微小的更改,但不一定会影响代码(例如自述文件中的错字或其他一些小的打包错误)。
在这种情况下有点奇怪,因为在 PyPI 上没有用于设置工具的 52.0.0.post20210125
版本。然而,有一个 51.1.0.post20201221 版本显然是 made by mistake。
我不知道你是如何得到你拥有的那个的。它似乎不存在(可能已被删除)。
您应该在冻结 pip 环境之前尝试升级 setuptools,因为您拥有的环境无论如何都已经过时了。