[英]When can I use “conda install” and when have to use “pip install”
我正在嘗試使用conda來管理環境。 大多數時候,我可以簡單地用conda install foo
代替pip install foo
。 但是,在某些情況下(很少發生), conda install foo
可能會遇到PackagesNotFoundError
錯誤。 這是為什么?
這是一個具體的例子。 conda install pygal
工作正常。 但是,它的可選依賴項pygal_maps_world
(用於地圖支持)之一將無法直接通過conda安裝。
$ conda install pygal_maps_world
Solving environment: failed
PackagesNotFoundError: The following packages are not available from current channels:
- pygal_maps_world
Current channels:
- https://repo.anaconda.com/pkgs/main/osx-64
- https://repo.anaconda.com/pkgs/main/noarch
- https://repo.anaconda.com/pkgs/free/osx-64
- https://repo.anaconda.com/pkgs/free/noarch
- https://repo.anaconda.com/pkgs/r/osx-64
- https://repo.anaconda.com/pkgs/r/noarch
- https://repo.anaconda.com/pkgs/pro/osx-64
- https://repo.anaconda.com/pkgs/pro/noarch
- https://conda.anaconda.org/conda-forge/osx-64
- https://conda.anaconda.org/conda-forge/noarch
To search for alternate channels that may provide the conda package you're
looking for, navigate to
https://anaconda.org
and use the search bar at the top of the page.
我嘗試根據http://www.pygal.org/en/stable/documentation/types/maps/pygal_maps_world.html進行 pip安裝pygal_maps_world
。 然后,導出的ymal文件如下所示:
name: foo_env
channels:
- defaults
- conda-forge
dependencies:
- ... some other libraries
- zlib=1.2.11=h1de35cc_3
- zstd=1.3.7=h5bba6e5_0
- pip:
- pygal-maps-world==1.0.2
看一下底部的^^^,它添加了- pip
會話。 這是為什么? 我們如何確定可以通過conda直接安裝哪個庫,以及哪個庫需要通過pip
?
如Anaconda的了解Conda和Pip頁面中所述,Conda和Pip從不同的存儲庫安裝。
Pip安裝打包為wheel或source分發包的Python軟件。
...
Conda是一個跨平台的軟件包和環境管理器,可從Anaconda存儲庫以及Anaconda Cloud安裝和管理conda軟件包。 Conda軟件包是二進制文件。
如果您想事先手動進行驗證,則可以細讀存儲庫 。
或者,如果您以編程方式安裝需求,則可以將conda install
包裝在try / except塊中,並在PackagesNotFoundError
嘗試使用pip install
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.