查看所有Python相关学习笔记
一、背景
前期使用过程中发现使用python3自带的venv创建虚拟环境时,无法指定python版本(也许可以,但我没找到方法),所以打算利用第三方的工具conda
来管理python环境。
二、Miniconda安装
本文主要是介绍环境管理相关内容,因为anaconda太大了,所以此处选用Miniconda
,其中Miniconda是简化版的anaconda。
2.1 下载Miniconda
- 进入下载地址,选择最新版下载:下载地址-国内源
2.2 安装Miniconda
默认安装即可,安装完成后,在命令行进行环境管理,相关操作命令详见第三部分conda常用命令。
安装完成后的,国内源配置和代理设置方法,详见python使用国内源安装&pip使用代理下载&离线安装第三方库2.3章节
其中首选项界面说明如下:
- 第一个选项是将anaconda加到环境变量(Add Anaconda to my PATH environment variable)中,建议勾选,如不勾选的话,安装成功后记得将anaconda加到环境变量中(安装目录;安装目录\Scripts;安装目录\Library\bin,例如:C:\mysoft\Miniconda3;C:\mysoft\Miniconda3\Scripts;C:\mysoft\Miniconda3\Library\bin);
-
第二个选项是将anaconda注册为默认的python环境(Register Anaconda as my default Python xx),如果电脑中已安装python环境,不建议勾选此项,如果没安装过,可以勾选此项。
三、conda常用命令
3.1 conda版本管理
- 查看conda版本
conda --version
C:\Windows\system32>conda --version
conda 4.7.12
- 升级conda
conda update -n base -c defaults conda
3.2 conda中管理python环境
- 列出conda管理的所有环境
conda env list
,其中base为conda的主python环境,py2是后期自己新增的环境。
C:\Windows\system32>conda env list
# conda environments:
#
base * C:\lhy\Miniconda3
py2 C:\lhy\Miniconda3\envs\py2
C:\Windows\system32>
- 创建新的环境(环境名称为XXX,python版本3.5,包含包1,包2)
conda create --name xxx python=3.5 包名1 包名2
创建过程需要手动输入 y 确认安装的内容。
# 创建一个python2版本的环境
conda create --name py2 python=2
# 创建一个与conda主环境的python版本相同的python环境
conda create --name py32
# 创建一个python3.8版本的环境
conda create --name py38 python=3.8
- 激活conda中的主python环境
conda activate
,命令行前面有(base)
,表示主python环境已激活,此时可执行python相关操作,比如执行python代码python test.py
。
C:\Windows\system32>conda activate
(base) C:\Windows\system32>
- 切换/激活某个(xxx)环境
conda activate xxx
,如果是切换为主环境,可以直接用conda activate
# 从主环境切换到py2环境
(base) C:\Windows\system32>conda activate py2
(py2) C:\Windows\system32>
# 从py2环境切换到主环境
(py2) C:\Windows\system32>conda activate
(base) C:\Windows\system32>
- 退出当前环境
conda deactivate
(base) C:\Windows\system32>conda deactivate
C:\Windows\system32>
- 删除某个环境(xxx)及下属的所有包
conda remove --name xxx --all
3.3 conda管理python下的包(建议通过pip来管理包,尽量不要使用以下方式)
- 安装包
conda install xxx
(建议通过pip的方式安装) - 为指定环境xxx安装某个包
conda install -n xxx 包名
- 更新某个包
conda update xxx
- 更新所有包
conda upgrade --all
- 删除包
conda remove xxx