@[toc]【conda基础】conda创建虚拟环境及常用conda命令
虚拟环境
虚拟环境的定义
虚拟环境是一个独立的 Python 运行环境
,它包含特定版本的 Python 解释器及其相关的库和依赖项。虚拟环境与系统的全局 Python 环境隔离
,允许你在同一台机器上为不同的项目创建和管理不同的依赖环境。
虚拟环境优点
使用虚拟环境的主要目的是解决项目之间的依赖冲突和环境隔离问题
优点
1. 依赖隔离
不同的项目可能需要不同版本的 Python 或第三方库。虚拟环境可以为每个项目创建独立的环境,避免全局环境的污染。
例如,项目 A 需要 numpy == 1.18.5,而项目 B 需要 numpy==1.20.0。通过虚拟环境,可以在同一台机器上同时满足这两个项目的需求。
2. 避免版本冲突
在全局环境中安装或更新库时,可能会破坏其他项目的依赖关系。虚拟环境可以确保每个项目的依赖独立且稳定。
例如,全局环境中安装了 pandas == 1.0.0,但新项目需要 pandas==2.0.0。使用虚拟环境可以避免版本冲突。
3. 便于协作
通过虚拟环境,可以生成一个包含项目依赖列表的文件(如 requirements.txt 或 environment.yml),其他人可以轻松地复现相同的环境。
例如,使用 conda env export > environment.yml 导出环境配置,其他人可以通过 conda env create -f environment.yml 快速创建相同的环境。
4. 测试和开发
在开发过程中,可能需要测试不同版本的库或 Python 解释器。虚拟环境可以快速创建和切换环境,方便测试。
例如,测试 Python 3.7 和 Python 3.8 的兼容性时,可以分别创建两个虚拟环境。
5. 系统环境的保护
虚拟环境可以防止误操作对系统全局 Python 环境造成破坏。例如,安装或卸载库时不会影响系统环境。
6. 多项目支持
如果你同时开发多个项目,每个项目可能需要不同的依赖。虚拟环境可以为每个项目创建独立的环境,避免相互干扰。
虚拟环境的实现工具
常见的虚拟环境管理工具有:
**Conda
:**适用于数据科学和机器学习
项目,支持 Python 和非 Python 依赖。
venv(Python 内置):Python 3.3 及以上版本自带,轻量级
。
virtualenv:Python 2 和 3 通用的第三方工具,功能比 venv 更强大。
常用conda命令
本文主要介绍一些conda基础知识,方便用于日常查看使用
1. 创建虚拟环境
conda create --name myenv
myenv 是虚拟环境的名称,可自定义。
也可指定 Python 版本:
conda create --name myenv python=3.8
安装特定包:
conda create --name myenv python=3.8 numpy pandas
其中 numpy
与pandas
是数据处理的包
2. 激活虚拟环境
conda activate myenv
有时在linux系统
中需要使用:
source activate myenv
3. 退出虚拟环境
conda deactivate myenv
4. 查看所有虚拟环境
conda env list
5. 删除虚拟环境
conda remove --name myenv --all
6. 安装包
install 后加包的名称 也可进行指定包的版本
conda install numpy # install 后加包的名称 也可进行指定包的版本
7. 更新包
conda update numpy
更新所有的包
conda update --all
8. 删除包
使用removel
进行删除包
conda remove numpy
9. 查看已安装包
conda list
10. 导出环境配置
conda env export > environment.ym
11. 从文件创建环境
conda env create -f environment.yml
12. 清理缓存
conda clean --all