python - Pipenv:即使我安装了软件包,为什么会在自动创建锁定文件时运行 Pipenv Lock

标签 python pipenv

管道:

我在https://realpython.com/pipenv-guide/找到为了将项目转移到开发中,我必须运行

pipenv lock 

(更新/创建 Pipfile.lock 文件)

根据我的理解,每当我们使用安装任何软件包时

pipenv install django

Pipfile.lock 自动生成/更新。

那么需要做什么

pipenv lock

Pipfile.lock 不是总是更新的吗?

当然,如果我想随时创建 .lock 文件(如果删除的话)我可以做 pipenv lock

另外,如果 pipfile 不小心被删除了,我可以重新创建它吗?

最佳答案

让我更清楚地解释一下 假设您正在开发一个使用 pandas 版本 2.9.5 的项目,这是 pandas 的最新版本 在 pipfile 中 - 您将看到条目

Pandas =“*”

这里的 * 表示 pandas 的最新版本,但在 pipfile.lock 中它不会用 * 表示,而是确定性的 2.9.5 (pipfile.lock 是确定性文件)

今天2.9.5是最新版本,但明天我们可能会得到2.10,它可能与您的项目不兼容。

您不会将 pipfile 从测试环境移动到生产环境 - 您始终将 pipfile.LOCK 移动到生产环境,这可确保版本锁定在特定提到的版本而不是 * (最新版本)。 我希望我说得清楚。

关于python - Pipenv:即使我安装了软件包,为什么会在自动创建锁定文件时运行 Pipenv Lock,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52698659/

相关文章:

Python在迭代时从列表中删除

python - 将嵌套的 for 循环转换为等效的 map

python - 强制 pipenv 创建一个新的 virtualenv

python - pipenv:如何解决依赖冲突

python - 如何使用 Python 包装器安装 GDCM?

python - SWIG:传递二进制数据失败

python - sklearn MLPRegressor 的 Tensorflow 副本产生其他结果

python - Pipenv:找不到命令

python - 在 python tkinter 中设置 'after' 函数的延迟

python - 为什么 pipenv 无法在 docker 容器中安装包