Conda 使用教程大全来啦

什么是 Conda?

Conda 是一款功能强大的软件包管理器和环境管理器,您可以在 Windows 的 Anaconda 提示符或 macOS 或 Linux 的终端窗口中使用命令行命令

  • Conda 可以快速安装、运行和更新软件包及相关依赖项。
  • Conda 可以在本地计算机上创建、保存、加载和切换特定项目的软件环境。

Conda/Miniconda/Anaconda三者的区别

下面通过一张图,形象的展示了 Conda 环境和软件包管理工具与 Miniconda 和 Anaconda Python 发行版(注:Anaconda Python 发行版现在有超过 150 个额外的软件包!)之间的区别。

安装 Miniconda

常用conda命令

这里主讲解在Linux系统下的使用。

1:Linux环境安装Conda

MacOS和Windows安装Conda的方法都非常简单,可以直接使用图形化界面安装。下面介绍一下Linux下的安装方式:

bash 复制代码
# 下载conda 如果要安装其他的版本可以在清华大学源找到对应的安装包
wget --no-check-certificate https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh

Linux下Conda的安装包是一个sh脚本,下载后只需要授权安装即可。

bash 复制代码
# 授权
chmod +x Miniconda3-py39_4.12.0-Linux-x86_64.sh 
# 安装
./Miniconda3-latest-Linux-x86_64.sh

安装的过程中会提示同意安装协议等,一路yes就ok。安装完成后,会发现conda命令无法正常使用,这里要注意,需要执行如下命令才能生效:

bash 复制代码
vim ~/.bashrc
加入如下内容:
export PATH=/root/miniconda3/bin:$PATH

执行以下命令:
source ~/.bashrc

2:初始化 Conda

正常情况下安装完成后会提示是否将 Conda 默认启动配置到终端设置中,这样可以在开启新的终端时自动进入 conda 环境。如果不小心跳过了可以使用下面的方式手动进行初始化:

bash 复制代码
conda init bash
source ~/.bashrc

如果配置成功,终端开头应该会像下面这样显示,

bash 复制代码
(base) $

2:更新 Conda

bash 复制代码
codna update conda

3:卸载 Conda

  1. 去除终端配置中 Conda 相关的内容
bash 复制代码
 conda init --reverse bash
  1. 删除整个 ~/miniconda3 目录
bash 复制代码
 rm -rf ~/miniconda3
  1. 删除整个 ~/.conda 目录
bash 复制代码
 rm -rf ~/.conda
  1. 删除 Conda 配置文件
bash 复制代码
 rm ~/.condarc

4:Conda 包管理

  1. 安装
bash 复制代码
 conda install matplotlib
  1. 查看已安装的包
bash 复制代码
 conda list
  1. 更新包
bash 复制代码
 conda update 包名
  1. 删除包
bash 复制代码
 conda remove 包名

5:Python 版本管理

  1. 列出可安装的 Python 版本
bash 复制代码
 conda search python
  1. 创建指定 Python 版本的环境
bash 复制代码
conda create -n test python=3.8
  1. 激活环境
bash 复制代码
conda activate test
  1. 退出当前环境(返回 base 环境)
bash 复制代码
conda activate
  1. 列出所有环境
bash 复制代码
conda env list
  1. 删除环境
bash 复制代码
 conda env remove  -n test

6:Conda 项目迁移

在进行协作研究项目时,你的操作系统通常可能与协作者使用的操作系统不同。同样,服务器操作系统可能与本地计算机上使用的操作系统不同。在这些情况下,创建与操作系统无关的环境文件非常有用,可以与协作者共享该文件或用于在远程群集上重新创建环境。

  1. 导出环境
bash 复制代码
# 相同系统 
conda env export --name test --file environment.yml

# 跨平台 
conda env export --name machine-learning-env --from-history --file environment.yml
  1. 创建环境
bash 复制代码
conda env create --prefix ./env --file environment.yml
  1. 更新环境
bash 复制代码
 conda env update --prefix ./env --file environment.yml --prune
  1. 重建环境
bash 复制代码
conda env create --prefix ./env --file environment.yml --force

*7:创建Conda环境

使用conda可以在电脑上创建很多套相互隔离的Python环境,命令如下:

bash 复制代码
# 语法
conda create --name <env_name> python=<version> [package_name1] [package_name2] [...]
# 样例 创建一个名为PaddleOCR的环境,python版本为3.7
conda create --name PaddleOCR python=3.7

8:切换Conda环境

前面说到Conda可以创建多套相互隔离的Python环境,使用conda activate env_name可以切换不同的环境。

bash 复制代码
# 语法
conda activate env_name
# 样例 切换到PaddleOCR环境
conda activate PaddleOCR

如果要退出此环境,回到基础环境 可以使用如下命令

bash 复制代码
# 退出当前环境
conda deactivate

9:查看电脑上已安装的Conda环境

当电脑上安装了很多台Conda环境的时候,可以使用conda env list命令查看所有已创建的Conda环境。

bash 复制代码
# 查看当前电脑上所有的conda环
conda env list

10:删除某个Conda环境

如果某个环境不需要了,可以使用conda remove命令移除环境,语法如下:

bash 复制代码
# 语法
conda remove --name <env_name> --all
# 样例
conda remove --name PaddleOCR --all

如果只是想删除环境里的某个依赖,可以使用如下命令

bash 复制代码
# 语法
conda remove --name <env_name> <package_name>

# 样例
conda remove --name PaddleOCR requests

11:使用Conda安装依赖包

使用conda list命令可以查看当前环境已经安装了哪些依赖包。

bash 复制代码
# 查看当前conda环境安装的所有依赖包
conda list

如果要安装新的依赖包,可以使用conda install lib安装新的依赖包。

bash 复制代码
# 语法
conda install lib
# 样例
conda install requests

12:导出Conda环境

如果要将Conda环境迁移,可以使用conda list --explicit > /path/env.txt命令一次性将环境内的包导出。

bash 复制代码
# 语法&样例
conda list --explicit > /opt/env.txt

导入:

bash 复制代码
# 语法&样例
conda install --file /opt/env.txt

13:设置不默认打开conda

安装Conda后,每次打开终端都会有一个(base)这是因为默认进入了conda的base环境,设置不自动进入conda的base环境命令如下:

bash 复制代码
conda config --set auto_activate_base false
相关推荐
z千鑫2 分钟前
【人工智能】深入理解PyTorch:从0开始完整教程!全文注解
人工智能·pytorch·python·gpt·深度学习·ai编程
MessiGo26 分钟前
Python 爬虫 (1)基础 | 基础操作
开发语言·python
肥猪猪爸1 小时前
使用卡尔曼滤波器估计pybullet中的机器人位置
数据结构·人工智能·python·算法·机器人·卡尔曼滤波·pybullet
LZXCyrus1 小时前
【杂记】vLLM如何指定GPU单卡/多卡离线推理
人工智能·经验分享·python·深度学习·语言模型·llm·vllm
Enougme1 小时前
Appium常用的使用方法(一)
python·appium
懷淰メ1 小时前
PyQt飞机大战游戏(附下载地址)
开发语言·python·qt·游戏·pyqt·游戏开发·pyqt5
hummhumm2 小时前
第 22 章 - Go语言 测试与基准测试
java·大数据·开发语言·前端·python·golang·log4j
hummhumm2 小时前
第 28 章 - Go语言 Web 开发入门
java·开发语言·前端·python·sql·golang·前端框架
每天吃饭的羊2 小时前
python里的数据结构
开发语言·python
卡卡_R-Python3 小时前
UCI Heart Disease Data Set—— UCI 心脏病数据集介绍
python·plotly·django·virtualenv·pygame