配置Python环境之Conda
Conda简介
conda 既具有 pip 的包管理能力,同时也具有 vitual env 的环境管理功能,因此在相互独立的环境中,可以简单认为 conda 就是 pip 和 vitual env 的组合,在包管理这方面,conda 不仅能管理 python 包,还可以管理任何类型的、用任何语言写的包和依赖,包来源是 Anaconda repo(默认)和 Cloud。
AnaConda和MiniConda区别
- Anaconda 是一个大而全的软件发行版,是一个预先建立和配置好的模块集,能够安装在操作系统上使用。它包含了Python本身和数百个第三方开源项目的二进制文件,如 numpy、scipy、ipython、matplotlib等,这些库基本是为了方便处理数据科学相关的问题。
- Miniconda 也是一个软件发行版,但它仅包含python、conda 和 conda 的依赖项,本质上就是一个空的用来安装 conda 环境的安装器,它没有 Anaconda 中那么多的包,可以理解为 Anaconda 的精简版,能够方便用户按照自己的需求,从零开始构建任意的环境。
Conda下载安装
官网:下载速度慢
清华源:拉到最后下载最新版本即可。
本文安装 MiniConda,下载完成后直接傻瓜式安装即可。
配置环境变量
在命令行输入 conda
出现以下信息证明 Conda环境配置成功。
初始化Conda环境
根据使用的命令行工具执行init指令,例如我当前用的命令行工具是cmd
配置下载源
Conda 包管理器下载各类库的来源是国外的服务器,常常会面临下载速度慢的问题。可以为 conda 添加软件包通道(channel),以清华源为例,输入如下命令可以将清华源的两个地址添加到通道。
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
为了在查看 conda 软件包通道的下载链接时能显示我们手动配置的通道地址,可以通过如下命令进行设置:
conda config --set show_channel_urls yes
如果不配置下载源,conda 会使用默认的软件包通道,即从官方 Anaconda 仓库获取软件包。具体的软件包通道情况可以通过 conda config --show
命令查看,返回的信息不仅能看到下载源的地址信息,还能看到创建的 conda 环境所在的文件夹。如果想要重置下载源的信息,可以用 conda config --remove-key channels 命令实现。
虚拟环境
查看环境列表
conda env list
创建环境
要创建一个新的 conda 环境,可以使用 conda create
命令,指定该环境下所需的 Python 版本和要安装的软件包。例如:
conda create --name myenv python=3.8 numpy matplotlib
这将创建一个名为 myenv
的环境,并在其中安装 Python 3.8、NumPy 和 Matplotlib。在创建环境时,会有软件包列表的提示。输入 y 确认后即等待环境创建即可。
PS:第一次安装报错试着将命令行窗口重启一下。
删除环境
例如我们要把 myenv 这个名字的环境删除,可以通过如下命令进行删除:
conda remove --name myenv --all
该命令会删除 myenv 环境及环境下所有的安装包,该操作是不可逆的,在执行之前需确认好。
激活(切换)环境
经过环境的创建之后,我们用 conda env list
来查看已有的 conda 环境,发现已经创建好了名为 myenv 的环境,但是此时我们根据如下位置判断我们所在的 conda 环境仍然是名为 base 的环境,因此我们要激活并切换到 myenv 环境中。
通过如下命令可实现激活并切换环境的功能,不同系统上的命令有所区别。
conda activate myenv
如果不切换环境,而只是退出当前环境,可以用 conda deactivate
退出当前的 conda 环境。
下载(卸载)库
当我们要在不同环境下安装库时,需要先切换到指定环境当中,例如我们要下载或者卸载 scipy,可以执行如下命令进行:
下载安装
conda install scipy
卸载
conda remove scipy
导出(导入)环境
当我们想要保存某个环境的配置信息,例如下载源信息、环境的Python版本信息、安装的包的版本信息等,可以先切换到指定环境下,通过以下命令将这些配置信息导出:
conda env export > environment.yml
该命令会将当前的环境配置信息导出到为 environment.yml 配置信息文件,文件导出地址默认为当前工作目录(也可以指定输出的绝对地址)。这时候,我们将配置文件传到另一台电脑,想基于该配置文件创建 conda 环境,可以通过以下命令:
conda env create -f environment.yml
至此,本文分享到此结束!!!