Conda版本pip install -r requirements.txt --target ./lib


125

它的conda版本是什么?

pip install -r requirements.txt --target ./lib

我发现了以下命令:

while read requirement; do conda install --yes $requirement; done < requirements.txt

但是它并没有告诉你如何指定 --target ./lib

Answers:


181

您可以运行conda install --file requirements.txt而不是循环运行,但是conda install中没有目标目录。conda install将软件包列表安装到指定的conda环境中。


1
当我这样做对我的requirements.txt指定版本的软件包,我得到InvalidVersionSpec: Invalid version '3.0.': empty version component
Dr_Zaszuś

在中没有目标目录conda install。但是,可以使用--prefix可选参数(doc)指定虚拟环境的位置,并且可以使用--name--prefix可选参数(doc)给出目标环境规范。
Remi Cuingnet

57

要创建py37使用python 3.7命名的环境,请使用conda-forge频道和软件包列表:

conda create -y --name py37 python=3.7
conda install --force-reinstall -y -q --name py37 -c conda-forge --file requirements.txt
conda activate py37
...
conda deactivate

标志说明:

  • -y:请勿要求确认。
  • --force-reinstall:即使已存在,也要安装该软件包。
  • -q:不显示进度条。
  • -c:用于搜索软件包的其他渠道。这些是按顺序搜索的URL

ansible -role dockpack.base_miniconda可管理conda环境,并可用于创建docker基本映像。

或者,您可以创建一个environment.yml文件而不是requirements.txt文件:

name: py37
channels:
  - conda-forge
dependencies:
  - python=3.7
  - numpy=1.9.*
  - pandas

使用此命令列出您拥有的环境:

conda info --envs

使用以下命令删除环境:

conda env remove -n py37

19
解释标志将是有用的

在将python3上面的第二条命令从环境中删除后,为什么只有python2是什么原因呢?
ionox0年

1
conda管理python环境,conda停用重置您的shell,conda激活py37设置您的PATH。
bbaassssiiee

如果添加yaml文件的位置以及如何从中安装环境,这可能会很有用。我想如果您拥有yaml文件,环境就不会简单地存在。
哈维

9

您可以随时尝试以下操作:

/home/user/anaconda3/bin/pip install -r requirements.txt

这只是使用安装在conda环境中的pip。如果您的环境中未预先安装pip,则始终可以运行以下命令

conda install pip

只是pip install -r requirements.txt对我来说很棒。
Tms91

2

快速搜索conda官方文档将帮助您找到每个标志的作用。

至今:

  • -y:请勿要求确认。
  • -f:我认为应该是--file,因此它会从给定文件中读取软件包版本。
  • -q:不显示进度条。
  • -c:用于搜索软件包的其他渠道。这些是按顺序搜索的URL

0

这会工作吗?

cat requirements.txt | while read x; do conda install "$x" -p ./lib ;done

要么

conda install --file requirements.txt -p ./lib
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.