Conda 使用教程

Conda 使用教程

Conda 是一个开源的包管理和环境管理工具,主要用于 Python(也支持其他语言),常与 Anaconda/Miniconda 一起使用。它允许创建隔离的环境,管理包版本和依赖。以下教程按安装、基本操作、进阶使用和常见问题组织。

1. 安装 Conda

前提条件

  • 支持所有主流操作系统:Windows、macOS、Linux。
  • 选择 Miniconda(轻量版,仅 Conda)或 Anaconda(包含大量科学包)。

安装步骤

  1. 下载安装程序

  2. 运行安装

    • macOS/Linux: text

      复制代码
      bash Miniconda3-latest-MacOSX-x86_64.sh  # 替换为下载文件
    • Windows:运行 .exe 文件,跟随向导。

  3. 配置环境

    • 安装后,重启终端。
    • 添加到 PATH(如果未自动):编辑 shell 配置文件。
  4. 验证安装

    text

    复制代码
    conda --version

2. 基本操作

创建环境

text

复制代码
conda create -n myenv python=3.9  # 创建名为 myenv 的环境,使用 Python 3.9

激活/停用环境

  • 激活: text

    复制代码
    conda activate myenv
  • 停用: text

    复制代码
    conda deactivate

安装包

  • 在激活环境中: text

    复制代码
    conda install numpy pandas
  • 指定版本: text

    复制代码
    conda install numpy=1.21

查看信息

  • 环境列表: text

    复制代码
    conda env list
  • 已安装包列表: text

    复制代码
    conda list
  • 搜索包: text

    复制代码
    conda search numpy

更新/卸载

  • 更新 Conda: text

    复制代码
    conda update conda
  • 更新包: text

    复制代码
    conda update numpy
  • 卸载包: text

    复制代码
    conda remove numpy
  • 删除环境: text

    复制代码
    conda env remove -n myenv

3. 进阶使用

环境导出/导入

  • 导出: text

    复制代码
    conda env export > environment.yml
  • 导入: text

    复制代码
    conda env create -f environment.yml

通道(Channels)配置

  • 添加通道(如 conda-forge): text

    复制代码
    conda config --add channels conda-forge
  • 优先级:编辑 ~/.condarc 文件。

与 pip 集成

  • 在 Conda 环境中使用 pip 安装非 Conda 包: text

    复制代码
    pip install some-package
  • 导出时包含 pip 包:使用 --from-history。

虚拟环境自动激活

  • 使用 conda init 初始化 shell。
  • 为 Jupyter 等工具:安装 ipykernel 并添加内核。

加速下载

  • 使用镜像(如清华源): text

    复制代码
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/
    • 但 Conda 通道需单独配置。

4. 常见问题与排查

  • 激活失败:确保 base 环境未禁用,运行 conda init。
  • 依赖冲突:使用 conda install --strict-channel-priority。
  • 慢速:清理缓存 conda clean -a,或使用 mamba(更快替代:conda install mamba)。
  • Windows 路径问题:避免长路径,使用短目录。
  • 调试:conda info 显示详细信息。
相关推荐
老前端的功夫10 小时前
【Java从入门到入土】47:构建工具:Maven与Gradle的战争
java·python·maven
yang_coder10 小时前
juypter notebook启动ssl报错的处理记录
python·jupyter
江华森11 小时前
exp01_Python_数据类型
开发语言·python
大鱼>11 小时前
模型可解释性:特征重要性/SHAP/LIME
人工智能·python·机器学习·lstm
代码不接地11 小时前
【时间序列预测】0.时间序列任务知识地图
python·ai编程
许彰午12 小时前
77_Python数据清洗实战技巧
开发语言·python
Sam092712 小时前
【AI 算法精讲 16】BPE 分词:从字节对到子词
人工智能·python·算法·ai
江华森12 小时前
04-python-面向对象
开发语言·python
梦帮科技12 小时前
基于EVM架构的Web3音频确权与RNS Token智能合约设计深度解析
人工智能·python·架构·web3·区块链·音视频·智能合约