Conda安装与使用
概要
本文详细介绍了Conda这一开源的包与环境管理系统。Conda支持Python等多语言,具备安装、更新软件包以及创建独立环境以隔离项目依赖的功能。其功能涵盖包管理(支持多来源,相较于pip更为强大)和环境管理(可实现多环境独立,避免版本冲突)。Conda有Anaconda(预装众多软件包,适合初学者)和Miniconda(体积小巧,适合进阶用户)两个版本,并提供了安装配置步骤、基本命令(如环境的创建、激活,包的安装、更新等)。此外,文章还对比了Conda与Pip的区别,同时给出了国内镜像源的配置方法,以提升下载速度。
- Conda作为开源的包与环境管理系统,具备多语言兼容性,能够有效隔离项目软件包版本。
- Conda的包管理功能支持安装多语言软件包及其依赖项,软件包来源包括Anaconda仓库、Conda - Forge和PyPl。
- Conda的环境管理功能可创建独立的运行环境,从而避免不同项目软件包版本之间的冲突。
- Conda有Anaconda和Miniconda两个版本,二者的差异主要体现在预安装软件包数量和体积大小上,Anaconda适合初学者,Miniconda则更适合进阶用户。
- Conda的安装需从官网下载安装包,建议在安装过程中勾选添加环境变量选项,可使用conda --version或 - V命令检测安装是否成功。
- Conda的环境操作命令包括:创建、激活、退出、列出、删除、重命名、导出和导入环境。
- Conda的包管理命令包括:安装、列出、更新、删除和搜索软件包。
- Conda与Pip的区别主要体现在管理范围、环境隔离能力、安装方式和可用包数量等方面。
- 配置国内镜像源能够显著提升Conda的下载速度,主流的镜像源有清华、中科大、阿里云和华为云,配置时需设置严格的频道优先级。
简介
Conda作为一款开源的包管理与环境管理系统,尽管主要应用于Python编程环境,但同样兼容R、Java、C/C++等多种编程语言。它功能强大,不仅能够协助用户完成软件包及其依赖项的安装、运行与更新操作,还能创建独立的“环境”,以隔离不同项目所需的软件包版本。
主要功能
1. 包管理
- 相较于pip,Conda功能更为强大。它不仅能安装Python包,还支持非Python软件或库的安装,例如numpy的C依赖。
- 软件包的主要来源如下:
- Anaconda仓库(默认):该仓库拥有大量预编译的科学计算包。
- Conda - Forge:作为社区维护的仓库,其软件包更新更为及时。
- PyPl:可通过pip进行安装(在Conda环境中,pip与Conda可混合使用,但建议优先使用Conda)。
2. 环境管理
- Conda支持创建多个相互独立的运行环境,每个环境都配备独立的Python版本和软件包集合。
- 它能有效解决不同项目对软件包版本的冲突问题。
- 各环境之间实现了完全隔离。
Conda安装
版本选择
|
特性 |
Anaconda |
Miniconda |
|
定位 |
数据科学发行版(适合初学者/开箱即用) |
Conda最小化安装器(适合进阶用户/自定义) |
|
安装包大小 |
~3GB |
~100MB(小巧) |
|
预装内容 |
包含Conda+Python+250+个数据科学包(如NumPy,Jupyter,SciPy)以及图像化界面Anaconda Navigator |
仅包含Conda和Python,没有预装任何额外科学计算包。 |
|
使用场景 |
|
|
|
灵活性 |
较低(预安装包多,有时可能包含不需要的包) |
极高(从零开始构建,完全按需安装) |
|
后续管理 |
可以用Conda自由安装/卸载任何包 |
需要用Conda手动安装每一个所需的包 |
安装及配置
Anaconda官网:https://www.anaconda.com/download
Miniconda官网:https://conda.io/miniconda.html
下载后双击运行安装包即可,无需额外安装Python环境。安装过程中出现Advanced option选项,第一个选项是将Conda的路径加入环境变量(建议勾选),第二个选项是默认将Conda安装的Python定为系统使用的默认版本。
检测conda是否安装成功,若返回conda版本号,则表明安装成功。
conda --version
或者
conda -V
若命令无法识别,不一定是安装失败,也可能是环境变量未配置。安装Conda后,必须将其脚本目录添加到系统的PATH中,才能在终端直接使用conda命令。
若安装时未勾选自动配置环境变量,也可按照下图手动将本地的Conda安装路径配置到PATH中:
Conda基本命令
环境操作
# 创建新环境,指定python版本 conda create -n myenv python=3.13 # 激活环境(Windows 与 Linux/macOS命令不同) conda activate myenv # Windows/Linux/macOS(新版Conda) source activate myenv # Linux/macOS(旧版) # 退出当前环境 conda deactivate # 列出所有环境 conda env list # 删除环境 conda env remove -n myenv # 重命名环境,将myenv重命名为new_env conda create -n new_env --clone myenv # 导出环境配置(用于共享或备份) conda env export > environment.yml # 从YAML文件创建环境 conda env create -f environment.yml
包管理
# 安装包(在当前激活环境中) conda install numpy pandas matplotlib conda install numpy=1.21.2 # 指定版本 # 从特定渠道安装(如conda-forge) conda install -c conda-forge opencv # 列出当前环境的包 conda list # 更新包 conda update numpy conda update --all # 更新所有包 # 删除包 conda remove numpy # 搜索包 conda search tensorflow
Conda与Pip的区别
|
Conda |
Pip |
|
可以管理Python包和非Python依赖(如HDF5、MKL等) |
仅管理Python包 |
|
环境隔离是内置核心功能 |
依赖venv或virtualenv做环境隔离 |
|
预编译包(二进制),安装更快,避免编译问题 |
有时需要从源码编译(可通过wheel缓解) |
|
包数量通常少于PyPl,但包含大量科学计算包 |
PyPl包数量更多 |
Conda配置国内镜像源
为Conda配置国内镜像源可显著提升下载速度,避免因网络问题导致安装失败。以下是主流镜像源的配置方法和验证步骤。
一键快速配置(以清华源为例)
打开终端(Anaconda Prompt或系统终端),一次性执行以下所有命令即可完成配置:
# 1. 添加清华镜像源频道(包含 main, conda-forge, free) conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/ # 2. 设置搜索时显示频道地址 conda config --set show_channel_urls yes # 3. (关键)设置严格的频道优先级,避免混合源导致的依赖冲突 conda config --set channel_priority strict
其他主流镜像源
若需要其他镜像源,或企业级镜像,可参考以下配置:
中国科技大学 USTC
特点:下载速度快,在教育网环境下优势明显
# 1. 添加镜像源频道(包含 main, conda-forge, free) conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/ conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/ # 2. 设置搜索时显示频道地址 conda config --set show_channel_urls yes # 3. (关键)设置严格的频道优先级,避免混合源导致的依赖冲突 conda config --set channel_priority strict
阿里云 Aliyun
特点:由商业公司维护,网络兼容性良好
# 1. 添加镜像源频道(包含 main, conda-forge, free) conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/main/ conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/free/ conda config --add channels https://mirrors.aliyun.com/anaconda/cloud/conda-forge/ # 2. 设置搜索时显示频道地址 conda config --set show_channel_urls yes # 3. (关键)设置严格的频道优先级,避免混合源导致的依赖冲突 conda config --set channel_priority strict
华为云 HuaweiCloud
特点:提供企业级服务,稳定性高
# 1. 添加镜像源频道(包含 main, conda-forge, free) conda config --add channels https://mirrors.huaweicloud.com/repository/anaconda/pkgs/main/ conda config --add channels https://mirrors.huaweicloud.com/repository/anaconda/pkgs/free/ conda config --add channels https://mirrors.huaweicloud.com/repository/anaconda/cloud/conda-forge/ # 2. 设置搜索时显示频道地址 conda config --set show_channel_urls yes # 3. (关键)设置严格的频道优先级,避免混合源导致的依赖冲突 conda config --set channel_priority strict
本文来自博客园,作者:不思量一口干,转载请注明原文链接:https://www.cnblogs.com/bsl-zjw/articles/19498738

浙公网安备 33010602011771号