告别依赖地狱:Conda管理环境让你的项目更轻松!

这些天给大家介绍了一些Python的基础知识,但是忘了一件事儿,那就是如何配置和管理Python的虚拟环境?在数据科学和机器学习的世界中,项目环境的管理往往是菜鸟们面临的一大挑战,虚拟环境那是学习Python必须第一解决的事情,钢铁老豆平时使用最多的就是Conda,今天就给大家先介绍这个,后来再介绍其他几个新的。

告别依赖地狱:Conda管理环境让你的项目更轻松!

0.Conda简介

Conda官方文档:
https://conda.io/projects/conda/en/latest/index.html

Anaconda官方网站:https://www.anaconda.com/

Conda是一个开源的包管理器和环境管理器,不仅支持Python,还支持多种其他语言,列如Ruby、Lua、Scala、Java、R、Julia等等。Conda可以简化包的安装和管理,并允许你创建独立的环境以避免依赖冲突。所以Conda也就成为了数据科学、机器学习和任何涉及到复杂软件依赖关系的项目的理想选择之一。小结Conda的几个优点如下:

  • 多环境管理:Conda允许用户为不同的项目创建隔离的环境,每个环境都有其独立的库版本,这样做极大地减少了因版本不兼容导致的问题。
  • 跨平台支持:无论是在Windows、Mac还是Linux,Conda都能提供一致的管理体验。
  • 广泛的包支持:Conda拥有一个庞大的包库Anaconda Repository,用户可以在其中找到几乎所有需要的包。
  • 简化安装和配置:Conda可以管理包之间的依赖关系,自动解决安装过程中可能出现的复杂依赖问题。

1.安装

Conda可以通过安装Anaconda或Miniconda来获得。Anaconda包含了一套预安装的科学计算包,而Miniconda则提供了一个最小化的安装选项,最新主版本是Miniconda3。

钢铁老豆推荐使用清华大学的国内镜像源,拉取速度杠杠的~


https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/ # 安装方法


https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/ # Miniconda3安装包

Linux平台

选择下载合适的miniconda3安装包,添加执行权限,执行脚本

wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh
chmod +x Miniconda3-latest-Linux-x86_64.sh
./Miniconda3-latest-Linux-x86_64.sh

按提示输入安装配置,退出并重新进入终端,最后查看是否安装成功

# 查看conda版本
conda -V
# 查看使用协助
conda -h
# 查看conda信息
conda info

windows平台

直接双击下载的安装包,按提示安装完后,还需要做一件事情:

Win+X快捷键 > 系统 > 高级系统配置 > 环境变量,往Path追加3个路径

miniconda3condabin
miniconda3Scripts
miniconda3Libraryin

2.配置

这里钢铁老豆也是参考前面提到的清华源安装方式

https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/

注意事项:最好第一次新建环境前,就正确配置channels及其顺序,尽量使用一样channel安装环境,这样系统依赖才不容易冲突

vi ~/.condarc
---
auto_activate_base: false
ssl_verify: false
verbosity: 0
# channel_priority: strict
channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
conda clean -i  # 清除索引缓存

3.管理环境

# 创建环境,同时指定Python解释器的版本
conda create --name xxx python=3.8
# 激活环境
conda activate xxx
# 退出环境
conda deactivate

windows系统,如果在使用终端激活、退出conda虚拟环境有问题,可以尝试改用

# 激活环境
source activate xxx
# 退出环境
source deactivate

4.管理包

# 安装包
conda install xxx

# 列出所有包
conda list
# 列出包含关键字的包
conda list xxx

# 更新包
conda update xxx

# 删除包,不加--force时,同时删除它的依赖,有可能刚好这个依赖也是你需要的,有点系统apt remove的意思,要小心
conda remove numpy
# 删除包,加--force时,只会删除指定模块,但保留它的依赖,这个钢铁老豆常用~
conda remove numpy --force

5.其他高级操作

除了基本操作,Conda还支持环境克隆、环境文件导出等高级功能,这些功能可以协助开发者更好地复制和迁移虚拟环境。鉴于篇幅问题,这个钢铁老豆会单独写一篇专门介绍一下,欢迎关注,随时获取最新的文章推荐。

6.注意事项

Conda很机智,由于它同时支持pip指令的用法,等于说,你可以在conda虚拟环境里,同时使用两套安装和管理方式,不过有时候恰恰由于同时使用pip、conda安装了一样模块的不同版本,而且它们都存在时,你的程序可能就会莫名奇妙的不兼容,这时候不要只使用pip show xxx检查,记得同时使用conda list xxx也检查,最保险的方式就是把冲突的模块边卸载边检查,直到所有版本都删除后,只选择conda或pip重新安装。

欢迎点赞+收藏+评论+关注,每天学习一点Python小知识,无论基础、模块、数据分析、深度学习和Ai,总有你感兴趣的。我是钢铁老豆,一个30岁转行IT、自学成为算法工程师、想用Ai点亮孩子小小世界的Pythoner。

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
冖的头像 - 鹿快
评论 共1条

请登录后发表评论