首页 > 解决方案 > 如何用 pip 替换现有环境来重现 Python 环境?

问题描述

Python 环境传统上是用requirements.txt文件复制的。这仅在您愿意创建新环境时才有效

用新环境重现 Python Env

$ python -m venv .venv && source .venv/bin/activate
$ pip install -r requirements.txt
$ pip list

  pkg1==1.0.0
  pkg2==1.0.0
  pkg2_dep==1.0.0 # Not written in requirement.txt

使用现有环境重现 Python Env

$ python -m venv .venv && source .venv/bin/activate
$ pip install requirements.txt

# Made changes to requirements.txt
# Removed pk2==1.0.0
$ pip install requirements.txt
$ pip list

  pkg1==1.0.0
  pkg2==1.0.0 # Should be uninstalled!
  pkg2_dep==1.0.0 # this too

上述限制是由于 pip 无法同时安装和卸载。其他语言通过使用锁定文件来支持这一点。


问题:

标签: pythonpip

解决方案


看看 pipenv https://docs.pipenv.org/#pipenv-clean

clean
Uninstalls all packages not specified in Pipfile.lock.

pipenv clean [OPTIONS]

推荐阅读