【问题标题】:Conda version pip install -r requirements.txt --target ./libConda 版本 pip install -r requirements.txt --target ./lib
【发布时间】:2018-12-05 03:46:52
【问题描述】:

这个的 conda 版本是什么?

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

我找到了这些命令:

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

但它没有说明如何指定--target ./lib

【问题讨论】:

  • 你试过conda install --file requirements.txt吗?

标签: pip installation anaconda virtualenv conda


【解决方案1】:

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

【讨论】:

  • 当我在我的requirements.txt 上指定包的版本时,我得到InvalidVersionSpec: Invalid version '3.0.': empty version component
  • conda install 中没有我们的目标目录。但是,可以使用 --prefix 可选参数 (doc) 指定虚拟环境的位置,并且可以使用 --name--prefix 可选参数 (doc) 给出目标环境规范。
  • conda install installs a list of packages into a specified conda environment. 是什么意思?对我来说,它通常会为当前活动的任何 conda env 安装它。
  • @CharlieParker OP想要安装到不同的目录; pip 可以做到这一点,但 conda 可能不能。
【解决方案2】:

要使用 python 3.7 创建名为 py37 的环境,使用通道 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:频道,搜索包的附加频道。这些是按顺序搜索的网址

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

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

使用这些命令根据 Yaml 文件中的规范创建和激活 conda 环境:

conda env create --file environment.yml
conda activate py37

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

conda info --envs

使用此命令删除环境:

conda env remove --name py37

新功能! ansible-role dockpack.base_conda 可以管理 Linux、Mac 和 Windows 上的 conda 环境,并可用于创建具有自定义 conda 环境的 docker 映像。

【讨论】:

  • 解释标志会很有用
  • python3上面的第二条命令从环境中删除后,python2是唯一剩下的有什么原因吗?
  • conda 管理 python 环境, conda deactivate 重置你的 shell, conda activate py37 设置你的 PATH。
  • 如果您添加放置 yaml 文件的位置以及如何从中安装环境可能会很有用。我猜如果你有 yaml 文件,环境不会简单地存在。
  • @Ataxias 非常正确,标志解释非常有帮助。 +1!
【解决方案3】:

你总是可以试试这个:

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

这只是使用安装在 conda 环境中的 pip。如果您的环境中没有预装 pip,您可以随时运行以下命令

conda install pip

【讨论】:

  • 只需 pip install -r requirements.txt 对我来说效果很好。
  • python -m pip install -r requirements.txt 激活 conda env
  • 同上,一旦我激活了conda环境,我就做了pip3 install -r requirements.txt
【解决方案4】:

conda official docs 上快速搜索将帮助您找到每个标志的作用。

到目前为止:

  • -y:不求确认。
  • -f:我认为应该是--file,所以它从给定文件中读取包版本。
  • -q:不显示进度条。
  • -c:搜索包的附加频道。这些是按顺序搜索的网址

【讨论】:

    【解决方案5】:

    这行得通吗?

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

    conda install --file requirements.txt -p ./lib
    

    【讨论】:

    • 对我来说最好的解决方案:cat requirements.txt |同时读取 x;做 conda install -y "$x" ;完成
    • 我喜欢那个,它可能运行得更慢,但更可靠。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-01
    • 2016-04-26
    相关资源
    最近更新 更多