我已经在全局系统环境而不是我的虚拟环境(virtualenv)中安装了我需要的包(依赖项),因为我pip install <package-name>
在虚拟环境之外使用了该命令。
所以我想知道如何从它们中列出并将它们安装在我的任何 virtualenvs 中?
我已经在全局系统环境而不是我的虚拟环境(virtualenv)中安装了我需要的包(依赖项),因为我pip install <package-name>
在虚拟环境之外使用了该命令。
所以我想知道如何从它们中列出并将它们安装在我的任何 virtualenvs 中?
这在您错误地在全局系统环境而不是 virtualenv 中安装了一些包(依赖项)的情况下很有用。
例如,使用命令“pip install”,而不是“pipenv install”(在虚拟环境之外)。
所以解决方案是:
在全局系统环境中(在任何 virtualenv 之外),从所有已安装的包中创建一个“requirements.txt”文件:
$ pip freeze > requirements.txt
通过在上面创建的文件“requirements.txt”存在的根目录中运行以下命令,将已安装的依赖项从创建的“requirements.txt”文件导入到Pipfile;但首先检查:
a) 如果 Pipfile 不存在:
$ pipenv install
b) 如果 Pipfile 确实存在(即已经创建了 virtualenv):
$ pipenv install -r requirements.txt
然后你的包列表文件“Pipfile”和“Pipfile.lock”将被更新和锁定。
但我个人建议为避免此问题发生,请始终使用命令
$ pipenv install
而不是$ pip install
.
您可以在全局系统环境中创建文件,该文件的格式如下:
my_backages.txt
$ pip install -U Flask-SQLAlchemy
$ pip install --upgrade
$ pip install flask
然后你可以使用 pipfile 作为下一个:
$ pip install -r my_backages.txt