当前位置: 首页 > article >正文

Conda安装和使用(ubuntu)

以下是关于如何使用 Conda 的详细指南。这将涵盖从安装到基本操作的各个方面,帮助您高效地管理Python环境和依赖项。


Conda 简介

Conda 是一个跨平台的开源包管理器和环境管理器,最初由 Anaconda 开发,广泛用于数据科学、机器学习和科学计算等领域。它不仅支持 Python,还支持其他编程语言如 R。


安装 Conda

1. 选择安装包

  • Anaconda:包含了大量的预装包,适合需要丰富数据科学工具的用户。
  • Miniconda:一个轻量级的版本,仅包含 Conda 和其依赖,适合希望自定义环境的用户。

2. 下载与安装

清华大学开源软件镜像站下载地址: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

Windows:
  1. 访问 Anaconda 下载页面 或 Miniconda 下载页面。
  2. 下载适用于 Windows 的安装程序。
  3. 双击安装程序,按照提示完成安装。建议将 Conda 添加到系统 PATH 中(安装程序会有相关选项)。
macOS 和 Linux:
  1. 打开终端。

  2. 使用 wgetcurl 下载安装脚本。例如,下载 Miniconda:

    wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
    
  3. 运行安装脚本:

    bash Miniconda3-latest-Linux-x86_64.sh
    
  4. 按提示完成安装。安装完成后,重新加载终端或运行 source ~/.bashrc(或 source ~/.zshrc,取决于使用的 shell)。


基本使用

1. 更新 Conda

安装完成后,建议先更新 Conda 到最新版本:

conda update conda

2. 创建环境

创建一个新的 Conda 环境,并指定 Python 版本。例如,创建一个名为 myenv 的环境,使用 Python 3.8:

conda create -n myenv python=3.8

3. 列出环境

查看已创建的所有 Conda 环境:

conda env list

conda info --envs

4. 激活与停用环境

激活环境 myenv

conda activate myenv

停用当前激活的环境,返回到 base 环境:

conda deactivate

5. 安装包

在激活的环境中安装所需的包。例如,安装 numpy

conda install numpy

安装多个包:

conda install numpy pandas matplotlib

6. 搜索包

查找可用的包:

conda search package_name

例如,搜索 scipy

conda search scipy

7. 更新包

更新环境中的某个包到最新版本:

conda update package_name

例如,更新 numpy

conda update numpy

8. 移除包

从环境中移除某个包:

conda remove package_name

例如,移除 matplotlib

conda remove matplotlib

9. 删除环境

删除一个不再需要的环境:

conda remove -n myenv --all

10. 导出与导入环境

将环境配置导出为 yml 文件,以便在其他机器上重现:

conda env export > environment.yml

使用 yml 文件创建新环境:

conda env create -f environment.yml

高级功能

1. 使用不同的渠道 (Channels)

Conda 默认使用官方的 defaults 渠道。可以添加其他渠道如 conda-forge,这是一个社区驱动的、高质量的 Conda 包集合。

添加 conda-forge 渠道:

conda config --add channels conda-forge
conda config --set channel_priority strict

安装包时优先使用 conda-forge

conda install package_name

2. 管理 Conda 配置

查看当前的 Conda 配置:

conda config --show

3. 克隆环境

快速复制一个现有的环境:

conda create --name newenv --clone oldenv

常用命令汇总

命令功能
conda create -n env_name python=3.x创建新环境并指定 Python 版本
conda activate env_name激活指定环境
conda deactivate停用当前激活的环境
conda install package_name安装指定包
conda remove package_name移除指定包
conda update package_name更新指定包
conda list列出当前环境中的所有包
conda env listconda info --envs列出所有环境
conda remove -n env_name --all删除指定环境
conda env export > environment.yml导出环境配置
conda env create -f environment.yml通过 yml 文件创建环境
conda search package_name搜索包
conda clean --all清理缓存

使用示例

1. 创建和激活环境

假设你需要一个专用于机器学习的环境,Python 3.9,安装 scikit-learntensorflow

conda create -n ml_env python=3.9 scikit-learn tensorflow jupyter
conda activate ml_env

2. 更新环境中的包

conda update scikit-learn

3. 安装额外的包

例如,安装 jupyter

conda install jupyter

4. 导出环境

conda env export > ml_env.yml

5. 通过 yml 文件重现环境

在另一台机器上:

conda env create -f ml_env.yml

常见问题

与系统package冲突

如发现 pip list 中缺少某些包。
首先检查 pip 路径

pip --version
# 应输出类似于 pip x.x.x from /路径/到/conda/envs/data_env/lib/python3.x/site-packages/pip (python 3.x)

实际输出:

~$ pip --version
pip 22.0.2 from /usr/lib/python3/dist-packages/pip (python 3.10)

结论: 不应该在系统环境安装pip,并且使用conda安装pip

conda install pip

小贴士

  • 使用 base 环境:避免在 base 环境中进行日常开发,建议新建独立环境以防止依赖冲突。
  • 管理依赖冲突:尽量在创建环境时一次性安装所有需要的包,可以减少依赖冲突的可能性。
  • 定期清理:使用 conda clean --all 定期清理缓存,释放磁盘空间。
  • 与系统package冲突: 如

总结

Conda 是一个强大的工具,能够帮助开发者轻松管理不同的项目环境和依赖。通过合理使用 Conda,您可以避免环境冲突,提高开发效率。希望本指南能帮助您顺利上手并充分利用 Conda 的各种功能。


http://www.kler.cn/news/308682.html

相关文章:

  • 在petalinux工程里添加iperf
  • Unity实战案例全解析 :PVZ 植物脚本分析
  • linux git配置kdiff3工具解决冲突
  • C语言11--特殊函数
  • git删除本地分支报错:error: the branch ‘xxx‘ is not fully merged
  • 1分钟解决 -bash: mvn: command not found,在Centos 7中安装Maven
  • 【代码随想录训练营第42期 Day58打卡 - 图论Part8 - 拓扑排序
  • 微信小程序----日期时间选择器(自定义时间精确到分秒)
  • Redis -- 全记录(面试)
  • tensor连接和拆分
  • mysql学习教程,从入门到精通,MySQL 子查询 子句(11)
  • 高级I/O知识分享【epoll || Reactor ET,LT模式】
  • Numba基础
  • vue.nextTick()方法的使用
  • python怎么运行cmd命令
  • 网络协议头分析
  • 【PostgreSQL-patroni维护命令】
  • 基于vue框架的宠物寄养系统3d388(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
  • USB开启ADB设置流程
  • 麒麟操作系统 MySQL 主从搭建
  • Qt QDialog点击界面自动激活问题解决办法
  • 枚举类题目练习心得
  • Golang | Leetcode Golang题解之第403题青蛙过河
  • 【题解】CF2009G1
  • QtC++截图支持获取鼠标光标
  • 运维工程师面试整理-虚拟化与容器
  • 实时数仓3.0DWD层
  • vulnhub(7):Toppo(经典的suid滥用提权)
  • ArcGIS Pro SDK (十四)地图探索 1 地图视图
  • 探索 InternLM 模型能力边界