Anaconda的基本介绍和使用及常用命令

836 阅读8分钟

Anaconda的基本介绍和使用及常用命令
使用anaconda+Pycharm搭建Django项目(一)
使用anaconda+命令搭建Django项目(一)
使用anaconda+Pycharm搭建Django项目-模板使用和前后端交互(二)
使用anaconda+Pycharm搭建Django项目-与SQLite数据库交互(三)
Python Django 之各种数据库连接及基本操作

一、Anaconda介绍

Anaconda,中文大蟒蛇,是一个开源的Anaconda是专注于数据分析的Python发行版本,包含了condaPython等190多个科学包及其依赖项。

Anaconda就是可以便捷获取包且对包能够进行管理,包括了python和很多常见的软件库和一个包管理器conda。常见的科学计算类的库都包含在里面了,使得安装比常规python安装要容易,同时对环境可以统一管理的发行版本

特点:开源、 安装过程简单、高性能使用Python和R语言、免费的社区支持

二、为什么要使用Anaconda

在最开始使用python语言进行编写程序的时候,我们需要两个东西,一个是python解释器,用来解释编译我们的python代码。另一个是编写代码过程中使用到的第三方包,一般放在site-packages目录下。

解释器:

image.png

第三方包:

image.png

解释器: 由于python版本不同,解释器也分为python2python3两个版本。python2和3之间无法互相兼容,也就是说用python2语法写出来的脚本不一定能在python3的解释器中运行

包集合: 包集合中包含了自带的包和第三方包,第三方包我们一般通过pip或者easy_install来下载,当一个python环境中不包含这个包,那么引用了这个包的程序不能在该python环境中运行

anaconda解决的问题:

第一个问题: 不同的项目,我们可能使用到的python版本是不一样的,python2和python3无法兼容,python3的小版本之间也存在着差异,这样我们在做项目的时候,去来回切换python环境变量,是非常麻烦的。有了anaconda以后,可以帮我们解决这个问题。这是anaconda帮我解决的第一个问题,python版本切换

第二个问题: 另一个要解决的问题就是包的问题,如果我们本地只有一个python环境,我有很多个项目,使用pip install方法会默认把包安装在同一个路径中,这样把所有项目的包都放到同一个环境,就会导致我们的环境十分混乱。而且,当我们想把一个写好的程序放到另一个电脑上运行的时候,需要一个个区手动下载相关的包。这就让人十分头疼。此时,如果我们每个项目都用自己独立的环境,开发好以后,把该程序需要的环境独立打包出来,相当于我们的程序有着自己的沙盒,这个沙盒中有我们自有的环境和包。这样我们的程序就变的十分干净整洁。

第三个问题: 单独安装python,很多常用的功能包我们需要一个个手动去下载安装,使用anaconda则不用考虑这些问题,会自动包含很多常用的包。并且还捆绑了交互式代码编辑器。(SpyderJupyter...)。

三、Anaconda的包管理工具Conda

Conda是一个开源的包管理系统和环境管理系统,它主要用于安装和管理软件包以及创建和维护不同的软件环境。Conda最初是为Python程序设计的,但它可以用来打包和分发任何语言的软件,包括RRubyLuaScalaJavaJavaScriptCC++FORTRAN等。CondaAnaconda, Inc.开发,是Anaconda发行版的一部分,但也可以独立于Anaconda使用。

主要特点

  1. 跨平台:Conda支持Windows、macOS和Linux操作系统。
  2. 环境管理:Conda可以创建隔离的环境,每个环境可以有不同的软件包和版本,这有助于避免不同项目之间的依赖冲突。
  3. 依赖性解决:Conda使用先进的算法来解决软件包之间的依赖关系,确保软件包的兼容性。
  4. 二进制包:Conda提供了大量的预编译二进制包,这可以加快安装速度并简化编译过程。
  5. 社区支持:Conda有一个活跃的社区,社区成员通过Conda Forge等平台贡献和维护软件包。
  6. 易于使用:Conda提供了命令行界面,通过简单的命令就可以进行包的安装、更新、卸载和环境管理。

pip和conda的对比

pipconda都是Python的包管理工具,但它们在设计和功能上有一些关键的区别。以下是它们的主要比较:

  1. 包管理方式
  • pip

  • 只管理Python包。

  • 通常用于安装Python库和工具。

  • 通过Python的site-packages目录安装包。

  • conda

  • 管理Python环境和包,包括非Python包(如C/C++库)。

  • 可以创建独立的环境,每个环境有自己的一套包和Python版本。

  • 通过Conda环境的特定目录安装包,不污染全局Python环境。

  1. 环境管理
  • pip
  • 没有内置的环境管理功能。
  • 通常需要手动管理Python版本和依赖,或者使用虚拟环境(如venvvirtualenv)。
  • conda
  • 内置环境管理功能,可以轻松创建、激活和删除环境。
  • 环境是自包含的,减少了版本冲突。
  1. 依赖性解决
  • pip
  • 依赖性解决可能不如conda强大,尤其是在涉及复杂依赖关系时。
  • 可能会遇到依赖冲突,需要手动解决。
  • conda
  • 有更先进的依赖性解决算法,通常能更好地处理复杂的依赖关系。
  • 通过Conda Forge等社区维护的通道,可以找到许多预编译的包。
  1. 跨平台支持
  • pip
  • 主要用于Python包,对于跨平台的二进制包支持有限。
  • conda
  • 提供了跨平台的二进制包,使得在不同操作系统上安装相同环境变得容易。
  1. 性能和速度
  • pip
  • 安装速度通常取决于包的大小和依赖性。
  • 有时需要编译包,这可能会减慢安装过程。
  • conda
  • 通常提供预编译的包,这可以加快安装速度。
  • 但是,conda环境的创建和激活可能比使用pip的虚拟环境慢。
  1. 社区和生态系统
  • pip
  • 作为Python的官方包管理器,拥有庞大的用户基础和广泛的社区支持。
  • PyPI(Python Package Index)是最大的Python包仓库。
  • conda
  • 由Anaconda, Inc.维护,拥有活跃的社区和Conda Forge等仓库。
  • 特别受数据科学和机器学习社区的欢迎。
  1. 使用场景
  • pip
  • 适合于简单的Python项目,或者当你只需要安装几个Python库时。
  • conda
  • 适合于复杂的Python项目,需要多个依赖和环境管理时。
  • 适合于需要跨平台支持和预编译包的情况。

四、安装Anaconda

4.1 安装地址www.anaconda.com/download/

4.2 发送邮件

image.png

接收邮件并下载

image.png

安装

image.png

配置环境变量

将安装目录的Script目录配置到环境变量中。

配置Anaconda源

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 config --set show_channel_urls yes

查看源是否配置成功

conda info

image.png

五、常用命令

5.1 为项目创建虚拟环境

为项目创建项目独立的虚拟环境。

conda create -n 环境名 -y

也可以指定puthon版本

conda create -n 环境名 python=3.x.x -y

在这个环境中配置各种各样的包,就可以在这个环境中运行目标程序的运行。 查看python版本

python --version

5.2 查看所有环境

conda env list

5.3 激活与退出环境

激活环境

conda activate 环境名称

退出环境

conda deactivate

5.4 安装包

当前环境中安装包

conda install 包名称

指定包版本

conda install 包名称=version

指定环境中安装包

conda install -n 环境名称 包名称

5.5 查看环境下所有包

conda list
pip list

5.6 删除环境/包

删除环境

conda remove -n 环境名 --all -y

删除当前环境的包

conda remove 包名

删除指定环境的包

conda remove -n 环境名 包名

5.7 其他常用命令

命令描述
conda update conda -y更新当前conda版本
conda search requests搜索包
conda update numpy更新包
conda update --all或conda upgrade --all更新所有包
conda search tpython搜索python版本
conda env export > environment.yml导出环境文件
conda env create -f environment.yml从环境文件创建环境
conda create -n 新环境名 --clone 旧环境名复制环境

附1 测试包是否安装成功

conda activate 3.12.4

image.png

附2 从Anaconda.org安装包

5.5.1 进入 anaconda.org 网站搜索包。

image.png

5.5.2 点击包名

image.png

5.5.3 拿到安装命令并执行

image.png