anaconda - 为什么conda的remove与conda的install不对称?

标签 anaconda conda

为什么看似简单/原子的 conda 安装会导致相当复杂的卸载?

我最近尝试了以下conda install

$ conda install -c conda-forge imageio-ffmpeg 
Collecting package metadata (current_repodata.json): done
Solving environment: done


==> WARNING: A newer version of conda exists. <==
  current version: 4.7.12
  latest version: 4.8.1

Please update conda by running

    $ conda update -n base -c defaults conda



## Package Plan ##

  environment location: /home/smgutstein/anaconda2/envs/dnn_py3

  added / updated specs:
    - imageio-ffmpeg


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    imageio-ffmpeg-0.3.0       |             py_0          14 KB  conda-forge
    ------------------------------------------------------------
                                           Total:          14 KB

The following NEW packages will be INSTALLED:

  imageio-ffmpeg     conda-forge/noarch::imageio-ffmpeg-0.3.0-py_0


Proceed ([y]/n)? y


Downloading and Extracting Packages
imageio-ffmpeg-0.3.0 | 14 KB     | ################################################################################################################ | 100% 
Preparing transaction: done
Verifying transaction: done
Executing transaction: done

这看起来像是一个相当原子的安装。

但是,当我尝试卸载时,事情变得更加变得更加复杂:

$ conda uninstall imageio-ffmpeg 
Collecting package metadata (repodata.json): done
Solving environment: done


==> WARNING: A newer version of conda exists. <==
  current version: 4.7.12
  latest version: 4.8.1

Please update conda by running

    $ conda update -n base -c defaults conda



## Package Plan ##

  environment location: /home/smgutstein/anaconda2/envs/dnn_py3

  removed specs:
    - imageio-ffmpeg


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    absl-py-0.8.1              |           py36_0         164 KB
    anaconda-client-1.7.2      |           py36_0         147 KB
    asn1crypto-1.3.0           |           py36_0         164 KB
    astor-0.8.0                |           py36_0          46 KB
    backcall-0.1.0             |           py36_0          20 KB
    backports-1.0              |             py_2         139 KB
    bleach-3.1.0               |           py36_0         221 KB
    c-ares-1.15.0              |    h7b6447c_1001          89 KB
    ca-certificates-2019.11.27 |                0         124 KB
    certifi-2019.11.28         |           py36_0         153 KB
    chardet-3.0.4              |        py36_1003         180 KB
    clyent-1.2.2               |           py36_1          19 KB
    cryptography-2.8           |   py36h1ba5d50_0         552 KB
    cudnn-7.6.5                |       cuda10.0_0       165.0 MB
    cycler-0.10.0              |           py36_0          13 KB
    cytoolz-0.10.1             |   py36h7b6447c_0         377 KB
    dask-core-2.9.1            |             py_0         556 KB
    defusedxml-0.6.0           |             py_0          23 KB
    entrypoints-0.3            |           py36_0          12 KB
    gast-0.3.2                 |             py_0          13 KB
    giflib-5.1.4               |       h14c3975_1          68 KB
    idna-2.8                   |           py36_0         112 KB
    imageio-2.6.1              |           py36_0         3.2 MB
    importlib_metadata-1.3.0   |           py36_0          46 KB
    ipykernel-5.1.3            |   py36h39e3cac_1         173 KB
    ipython-7.11.1             |   py36h39e3cac_0         988 KB
    ipython_genutils-0.2.0     |           py36_0          39 KB
    jasper-1.900.1             |       hd497a04_4         198 KB
    jedi-0.15.2                |           py36_0         738 KB
    joblib-0.14.1              |             py_0         201 KB
    jsonschema-3.2.0           |           py36_0          95 KB
    jupyter_client-5.3.4       |           py36_0         141 KB
    jupyter_console-6.0.0      |           py36_0          37 KB
    jupyter_core-4.6.1         |           py36_0          70 KB
    kiwisolver-1.1.0           |   py36he6710b0_0          82 KB
    lame-3.100                 |       h7b6447c_0         323 KB
    libiconv-1.15              |       h63c8f33_5         721 KB
    libprotobuf-3.11.2         |       hd408876_0         2.9 MB
    libsodium-1.0.16           |       h1bed415_0         214 KB
    libwebp-1.0.1              |       h8e7db2f_0         471 KB
    markupsafe-1.1.1           |   py36h7b6447c_0          29 KB
    matplotlib-3.1.1           |   py36h5429711_0         5.0 MB
    mistune-0.8.4              |   py36h7b6447c_0          55 KB
    more-itertools-8.0.2       |             py_0          39 KB
    nbconvert-5.6.1            |           py36_0         460 KB
    nbformat-4.4.0             |           py36_0         128 KB
    networkx-2.4               |             py_0         1.2 MB
    notebook-6.0.2             |           py36_0         4.0 MB
    numpy-1.17.4               |   py36hc1035e2_0           5 KB
    numpy-base-1.17.4          |   py36hde5b4d6_0         4.2 MB
    olefile-0.46               |           py36_0          48 KB
    openh264-1.8.0             |       hd408876_0         659 KB
    packaging-20.0             |             py_0          35 KB
    pandoc-2.2.3.2             |                0        14.0 MB
    pandocfilters-1.4.2        |           py36_1          13 KB
    parso-0.5.2                |             py_0          69 KB
    pexpect-4.7.0              |           py36_0          80 KB
    pickleshare-0.7.5          |           py36_0          13 KB
    pillow-7.0.0               |   py36hb39fc2d_0         600 KB
    pluggy-0.13.1              |           py36_0          33 KB
    prometheus_client-0.7.1    |             py_0          42 KB
    prompt_toolkit-2.0.10      |             py_0         227 KB
    protobuf-3.11.2            |   py36he6710b0_0         635 KB
    psutil-5.6.7               |   py36h7b6447c_0         318 KB
    ptyprocess-0.6.0           |           py36_0          23 KB
    py-1.8.1                   |             py_0          71 KB
    pygments-2.5.2             |             py_0         672 KB
    pyopenssl-19.1.0           |           py36_0          87 KB
    pyparsing-2.4.6            |             py_0          64 KB
    pyrsistent-0.15.6          |   py36h7b6447c_0          93 KB
    pysocks-1.7.1              |           py36_0          30 KB
    pytest-5.3.2               |           py36_0         365 KB
    pytest-runner-5.2          |             py_0          13 KB
    python-utils-2.3.0         |           py36_0          18 KB
    pywavelets-1.1.1           |   py36h7b6447c_0         3.5 MB
    pyyaml-5.2                 |   py36h7b6447c_0         180 KB
    pyzmq-18.1.0               |   py36he6710b0_0         453 KB
    qtconsole-4.6.0            |             py_1          97 KB
    requests-2.22.0            |           py36_1          92 KB
    scipy-1.3.2                |   py36h7c811a0_0        14.0 MB
    send2trash-1.5.0           |           py36_0          16 KB
    setuptools-44.0.0          |           py36_0         510 KB
    terminado-0.8.3            |           py36_0          26 KB
    toolz-0.10.0               |             py_0          50 KB
    tornado-6.0.3              |   py36h7b6447c_0         583 KB
    tqdm-4.41.1                |             py_0          54 KB
    traitlets-4.3.3            |           py36_0         140 KB
    urllib3-1.25.7             |           py36_0         169 KB
    wcwidth-0.1.7              |           py36_0          24 KB
    webencodings-0.5.1         |           py36_1          19 KB
    werkzeug-0.16.0            |             py_0         255 KB
    widgetsnbextension-3.5.1   |           py36_0         862 KB
    x264-1!152.20180806        |       h7b6447c_0         631 KB
    zeromq-4.3.1               |       he6710b0_3         496 KB
    ------------------------------------------------------------
                                           Total:       233.8 MB

The following packages will be REMOVED:

  atomicwrites-1.3.0-py_0
  gettext-0.19.8.1-hc5be6a0_1002
  imageio-ffmpeg-0.3.0-py_0
  lz4-c-1.8.3-he1b5a44_1001
  pthread-stubs-0.4-h14c3975_1001
  xorg-libxau-1.0.9-h14c3975_0
  xorg-libxdmcp-1.1.3-h516909a_0

The following packages will be UPDATED:

  absl-py                                      0.7.1-py36_0 --> 0.8.1-py36_0
  asn1crypto              anaconda::asn1crypto-1.0.1-py36_0 --> pkgs/main::asn1crypto-1.3.0-py36_0
  astor                                        0.7.1-py36_0 --> 0.8.0-py36_0
  attrs              anaconda/linux-64::attrs-19.1.0-py36_1 --> pkgs/main/noarch::attrs-19.3.0-py_0
  c-ares                                  1.15.0-h7b6447c_1 --> 1.15.0-h7b6447c_1001
  cffi                 anaconda::cffi-1.12.3-py36h2e261b9_0 --> pkgs/main::cffi-1.13.2-py36h2e261b9_0
  cloudpickle              anaconda::cloudpickle-1.2.1-py_0 --> pkgs/main::cloudpickle-1.2.2-py_0
  cryptography       anaconda::cryptography-2.7-py36h1ba5d~ --> pkgs/main::cryptography-2.8-py36h1ba5d50_0
  cudnn                                    7.6.0-cuda10.0_0 --> 7.6.5-cuda10.0_0
  cytoolz            anaconda::cytoolz-0.10.0-py36h7b6447c~ --> pkgs/main::cytoolz-0.10.1-py36h7b6447c_0
  dask-core                  anaconda::dask-core-2.1.0-py_0 --> pkgs/main::dask-core-2.9.1-py_0
  dbus                  conda-forge::dbus-1.13.6-he372182_0 --> pkgs/main::dbus-1.13.12-h746ee38_0
  decorator          anaconda/linux-64::decorator-4.4.0-py~ --> pkgs/main/noarch::decorator-4.4.1-py_0
  expat              conda-forge::expat-2.2.5-he1b5a44_1003 --> pkgs/main::expat-2.2.6-he6710b0_0
  gast                pkgs/main/linux-64::gast-0.2.2-py36_0 --> pkgs/main/noarch::gast-0.3.2-py_0
  glib               conda-forge::glib-2.58.3-h6f030ca_1002 --> pkgs/main::glib-2.63.1-h5a9c865_0
  imageio                    anaconda::imageio-2.5.0-py36_0 --> pkgs/main::imageio-2.6.1-py36_0
  importlib_metadata conda-forge::importlib_metadata-0.23-~ --> pkgs/main::importlib_metadata-1.3.0-py36_0
  ipykernel          anaconda::ipykernel-5.1.1-py36h39e3ca~ --> pkgs/main::ipykernel-5.1.3-py36h39e3cac_1
  ipython            anaconda::ipython-7.6.1-py36h39e3cac_0 --> pkgs/main::ipython-7.11.1-py36h39e3cac_0
  ipywidgets                anaconda::ipywidgets-7.5.0-py_0 --> pkgs/main::ipywidgets-7.5.1-py_0
  jedi                         anaconda::jedi-0.13.3-py36_0 --> pkgs/main::jedi-0.15.2-py36_0
  jinja2             anaconda/linux-64::jinja2-2.10.1-py36~ --> pkgs/main/noarch::jinja2-2.10.3-py_0
  joblib                       anaconda::joblib-0.14.0-py_0 --> pkgs/main::joblib-0.14.1-py_0
  jsonschema              anaconda::jsonschema-3.0.1-py36_0 --> pkgs/main::jsonschema-3.2.0-py36_0
  jupyter_client     anaconda/noarch::jupyter_client-5.3.1~ --> pkgs/main/linux-64::jupyter_client-5.3.4-py36_0
  jupyter_core       anaconda/noarch::jupyter_core-4.5.0-p~ --> pkgs/main/linux-64::jupyter_core-4.6.1-py36_0
  libprotobuf                              3.8.0-hd408876_0 --> 3.11.2-hd408876_0
  libtiff            conda-forge::libtiff-4.0.10-h57b8799_~ --> pkgs/main::libtiff-4.1.0-h2733197_0
  matplotlib         anaconda::matplotlib-3.1.0-py36h54297~ --> pkgs/main::matplotlib-3.1.1-py36h5429711_0
  mkl_fft                             1.0.12-py36ha843d7b_0 --> 1.0.15-py36ha843d7b_0
  mkl_random                           1.0.2-py36hd81dba3_0 --> 1.1.0-py36hd6b4f25_0
  more-itertools     conda-forge::more-itertools-7.2.0-py_0 --> pkgs/main::more-itertools-8.0.2-py_0
  nbconvert           anaconda/noarch::nbconvert-5.5.0-py_0 --> pkgs/main/linux-64::nbconvert-5.6.1-py36_0
  networkx                      anaconda::networkx-2.3-py_0 --> pkgs/main::networkx-2.4-py_0
  notebook                  anaconda::notebook-6.0.0-py36_0 --> pkgs/main::notebook-6.0.2-py36_0
  numpy                               1.16.4-py36h7e9f1db_0 --> 1.17.4-py36hc1035e2_0
  numpy-base                          1.16.4-py36hde5b4d6_0 --> 1.17.4-py36hde5b4d6_0
  openssl            conda-forge::openssl-1.1.1d-h516909a_0 --> pkgs/main::openssl-1.1.1d-h7b6447c_3
  packaging          pkgs/main/linux-64::packaging-19.0-py~ --> pkgs/main/noarch::packaging-20.0-py_0
  parso                          anaconda::parso-0.5.0-py_0 --> pkgs/main::parso-0.5.2-py_0
  pcre                 conda-forge::pcre-8.41-hf484d3e_1003 --> pkgs/main::pcre-8.43-he6710b0_0
  pillow              anaconda::pillow-6.1.0-py36h34e0f95_0 --> pkgs/main::pillow-7.0.0-py36hb39fc2d_0
  pip                                         19.1.1-py36_0 --> 19.3.1-py36_0
  pluggy             conda-forge/noarch::pluggy-0.12.0-py_0 --> pkgs/main/linux-64::pluggy-0.13.1-py36_0
  prompt_toolkit     anaconda/linux-64::prompt_toolkit-2.0~ --> pkgs/main/noarch::prompt_toolkit-2.0.10-py_0
  protobuf                             3.8.0-py36he6710b0_0 --> 3.11.2-py36he6710b0_0
  psutil              anaconda::psutil-5.6.3-py36h7b6447c_0 --> pkgs/main::psutil-5.6.7-py36h7b6447c_0
  py                             conda-forge::py-1.8.0-py_0 --> pkgs/main::py-1.8.1-py_0
  pygments                    anaconda::pygments-2.4.2-py_0 --> pkgs/main::pygments-2.5.2-py_0
  pyopenssl               anaconda::pyopenssl-19.0.0-py36_0 --> pkgs/main::pyopenssl-19.1.0-py36_0
  pyparsing                  anaconda::pyparsing-2.4.0-py_0 --> pkgs/main::pyparsing-2.4.6-py_0
  pyqt                  anaconda::pyqt-5.9.2-py36h22d08a2_1 --> pkgs/main::pyqt-5.9.2-py36h05f1152_2
  pyrsistent         anaconda::pyrsistent-0.14.11-py36h7b6~ --> pkgs/main::pyrsistent-0.15.6-py36h7b6447c_0
  pytest                   conda-forge::pytest-5.2.2-py36_0 --> pkgs/main::pytest-5.3.2-py36_0
  python-dateutil    anaconda/linux-64::python-dateutil-2.~ --> pkgs/main/noarch::python-dateutil-2.8.1-py_0
  pytz                           anaconda::pytz-2019.1-py_0 --> pkgs/main::pytz-2019.3-py_0
  pywavelets         anaconda::pywavelets-1.0.3-py36hdd077~ --> pkgs/main::pywavelets-1.1.1-py36h7b6447c_0
  pyyaml                               5.1.1-py36h7b6447c_0 --> 5.2-py36h7b6447c_0
  pyzmq               anaconda::pyzmq-18.0.0-py36he6710b0_0 --> pkgs/main::pyzmq-18.1.0-py36he6710b0_0
  qtconsole                  anaconda::qtconsole-4.5.2-py_0 --> pkgs/main::qtconsole-4.6.0-py_1
  requests                 anaconda::requests-2.22.0-py36_0 --> pkgs/main::requests-2.22.0-py36_1
  scipy                                1.2.1-py36h7c811a0_0 --> 1.3.2-py36h7c811a0_0
  setuptools                                  41.0.1-py36_0 --> 44.0.0-py36_0
  six                                         1.12.0-py36_0 --> 1.13.0-py36_0
  sqlite                                  3.28.0-h7b6447c_0 --> 3.30.1-h7b6447c_0
  terminado                anaconda::terminado-0.8.2-py36_0 --> pkgs/main::terminado-0.8.3-py36_0
  testpath           anaconda/linux-64::testpath-0.4.2-py3~ --> pkgs/main/noarch::testpath-0.4.4-py_0
  traitlets                anaconda::traitlets-4.3.2-py36_0 --> pkgs/main::traitlets-4.3.3-py36_0
  urllib3                   anaconda::urllib3-1.24.2-py36_0 --> pkgs/main::urllib3-1.25.7-py36_0
  werkzeug                                      0.15.4-py_0 --> 0.16.0-py_0
  wheel                                       0.33.4-py36_0 --> 0.33.6-py36_0
  widgetsnbextension anaconda::widgetsnbextension-3.5.0-py~ --> pkgs/main::widgetsnbextension-3.5.1-py36_0

The following packages will be SUPERSEDED by a higher-priority channel:

  anaconda-client                                  anaconda --> pkgs/main
  backcall                                         anaconda --> pkgs/main
  backports                                        anaconda --> pkgs/main
  bleach                                           anaconda --> pkgs/main
  bzip2                 conda-forge::bzip2-1.0.8-h516909a_0 --> pkgs/main::bzip2-1.0.8-h7b6447c_0
  ca-certificates    conda-forge::ca-certificates-2019.11.~ --> pkgs/main::ca-certificates-2019.11.27-0
  certifi                                       conda-forge --> pkgs/main
  chardet                                          anaconda --> pkgs/main
  clyent                                           anaconda --> pkgs/main
  cycler                                           anaconda --> pkgs/main
  defusedxml                                       anaconda --> pkgs/main
  entrypoints                                      anaconda --> pkgs/main
  freetype           conda-forge::freetype-2.10.0-he983fc9~ --> pkgs/main::freetype-2.9.1-h8a8886c_1
  giflib               conda-forge::giflib-5.1.9-h516909a_0 --> pkgs/main::giflib-5.1.4-h14c3975_1
  gmp                  conda-forge::gmp-6.1.2-hf484d3e_1000 --> pkgs/main::gmp-6.1.2-h6c8ec71_1
  graphite2          conda-forge::graphite2-1.3.13-hf484d3~ --> pkgs/main::graphite2-1.3.13-h23475e2_0
  gst-plugins-base   conda-forge::gst-plugins-base-1.14.5-~ --> pkgs/main::gst-plugins-base-1.14.0-hbbd80ab_1
  gstreamer          conda-forge::gstreamer-1.14.5-h36ae1b~ --> pkgs/main::gstreamer-1.14.0-hb453b48_1
  icu                   conda-forge::icu-58.2-hf484d3e_1000 --> pkgs/main::icu-58.2-h9c2bf20_1
  idna                                             anaconda --> pkgs/main
  ipython_genutils                                 anaconda --> pkgs/main
  jasper             conda-forge::jasper-1.900.1-h07fcdf6_~ --> pkgs/main::jasper-1.900.1-hd497a04_4
  jupyter_console                                  anaconda --> pkgs/main
  kiwisolver                                       anaconda --> pkgs/main
  lame                conda-forge::lame-3.100-h14c3975_1001 --> pkgs/main::lame-3.100-h7b6447c_0
  libiconv           conda-forge::libiconv-1.15-h516909a_1~ --> pkgs/main::libiconv-1.15-h63c8f33_5
  libpng              conda-forge::libpng-1.6.37-hed695b0_0 --> pkgs/main::libpng-1.6.37-hbc83047_0
  libsodium                                        anaconda --> pkgs/main
  libwebp             conda-forge::libwebp-1.0.2-h576950b_1 --> pkgs/main::libwebp-1.0.1-h8e7db2f_0
  libxcb             conda-forge::libxcb-1.13-h14c3975_1002 --> pkgs/main::libxcb-1.13-h1bed415_1
  libxml2             conda-forge::libxml2-2.9.9-h13577e0_1 --> pkgs/main::libxml2-2.9.9-hea5a465_1
  markupsafe                                       anaconda --> pkgs/main
  mistune                                          anaconda --> pkgs/main
  mkl-service                                      anaconda --> pkgs/main
  nbformat                                         anaconda --> pkgs/main
  olefile                                          anaconda --> pkgs/main
  openh264           conda-forge::openh264-1.8.0-hdbcaa40_~ --> pkgs/main::openh264-1.8.0-hd408876_0
  pandoc                                           anaconda --> pkgs/main
  pandocfilters                                    anaconda --> pkgs/main
  pexpect                                          anaconda --> pkgs/main
  pickleshare                                      anaconda --> pkgs/main
  pixman             conda-forge::pixman-0.38.0-h516909a_1~ --> pkgs/main::pixman-0.38.0-h7b6447c_0
  prometheus_client                                anaconda --> pkgs/main
  ptyprocess                                       anaconda --> pkgs/main
  pycparser                                        anaconda --> pkgs/main
  pysocks                                          anaconda --> pkgs/main
  pytest-runner                                 conda-forge --> pkgs/main
  python-utils       conda-forge/noarch::python-utils-2.3.~ --> pkgs/main/linux-64::python-utils-2.3.0-py36_0
  qt                       conda-forge::qt-5.9.7-h52cfd70_2 --> pkgs/main::qt-5.9.7-h5867ecd_1
  qtpy                                             anaconda --> pkgs/main
  send2trash                                       anaconda --> pkgs/main
  sip                  anaconda::sip-4.19.13-py36he6710b0_0 --> pkgs/main::sip-4.19.8-py36hf484d3e_0
  toolz                                            anaconda --> pkgs/main
  tornado                                          anaconda --> pkgs/main
  tqdm                                          conda-forge --> pkgs/main
  wcwidth                                          anaconda --> pkgs/main
  webencodings                                     anaconda --> pkgs/main
  x264               conda-forge::x264-1!152.20180806-h14c~ --> pkgs/main::x264-1!152.20180806-h7b6447c_0
  zeromq                                           anaconda --> pkgs/main
  zipp                                          conda-forge --> pkgs/main
  zstd                   conda-forge::zstd-1.4.0-h3b9ef0a_0 --> pkgs/main::zstd-1.3.7-h0b5b093_0


Proceed ([y]/n)? n

这是为什么呢?如何卸载此版本的 imageio-ffmpeg 而不会让整个环境面临风险?

作为背景,我开始尝试安装/卸载此软件包,因为我正在尝试使用 moviepy 软件包。当我尝试导入此包时,出现以下错误:

RuntimeError: imageio.ffmpeg.download() has been deprecated. Use 'pip install imageio-ffmpeg' instead.'

我没有逐字地遵循它,而是使用 conda 安装了 imageio-ffmpeg,但仍然收到相同的错误。当我用 Google 搜索我的错误时,我找到了建议的解决方案

sudo pip3 install imageio==2.4.1

所以,现在我想确保我的 conda 安装不会取代我计划的 pip3 安装。

最佳答案

不对称

在安装部分,Conda 使用隐式 --freeze-installed 标志运行,如果所有软件包都已存在,则安装会很简单。

在卸载中,Conda 没有等效的简单卸载。相反,它会尝试删除所请求的包,以及其他包未显式安装或需要的任何依赖项。不幸的是,它似乎通过尝试解决仅包含先前请求的环境包的环境来实现此目的,这意味着所有具有取代版本的包都将被更新。

您的特殊情况似乎因您从不同 channel (例如,conda-forge)安装而加剧,但从未在 Conda 配置中明确定义这些 channel 优先级(全局或在环境)。因此,大多数更改都涉及切换回软件包的默认 channel 版本。

替代方案

如果您确信没有其他任何变化,那么您可以使用 --force-remove 标志。

如果这是您安装的最新版本,另一个选择是尝试版本回滚,但这也可能会导致巨大的变化。也就是说,检查您的修订历史记录:

conda list --revisions

然后尝试安装倒数第二个。我肯定会先试运行它:

conda install --revision <your_rev> --dry-run

除非绝对必要,否则不要使用 Pip,并且绝对不要在您的基本环境中使用。一般来说,将 Pip 与 Conda 一起使用会导致不稳定(请参阅 Using Pip in a Conda Environment )。另外,如果您确实必须使用它,请不要使用 sudopip3。相反,激活环境并简单地使用 pip install

一般(有意见的)建议

就我个人而言,我发现使用 Conda 最稳定的方法是将所有环境视为不可变。也就是说,避免使用 conda (install|update|remove|uninstall) 命令。唯一的异常(exception)是首次指定新项目时。

不要临时安装和删除软件包,而是编写一个 YAML 文件并使用它来创建一个新的环境 (conda env create -f my_env.yml)您希望编辑您的环境。如果您需要向环境添加新包,请编辑 YAML 并从头开始重新创建环境。

关于anaconda - 为什么conda的remove与conda的install不对称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59773372/

相关文章:

python - 当 pip 设置为需要 virtualenv 时,如何允许 pip 进入 anaconda3 venv?

R 和 Julia Kernels 在 Jupyter 笔记本中不可用

python - Spyder 4 - 几秒钟后停用最后一个单词的自动突出显示

python-3.x - Gitlab CI/CD : Pytest running with Conda

python - 如何在conda下为ipython安装python包

python - 使用 Emacs Jedi(在 Anaconda 中)时可以避免使用 virtualenv 吗?

python - conda 'source deactivate' 产生错误 : too many arguments

pip - 在 YAML 文件中指定 conda 和 pip 包版本号时 = 和 == 等是什么意思

python - 在 Mac 上运行 sugiyama.py 时出现 lxml 错误

ubuntu - 如何根据 "Base"中的新安装更新 conda 的虚拟环境?