Anaconda(miniconda) 和 Jupyter Notebook 使用大揭秘

0. 前言

阅读本笔记需要你对 Python 比较了解,同时对数据统计分析或者机器学习有一定的兴趣

1. 关于 Anaconda 和 Jupyter Notebook

如果想对 Jupyter Notebook 有个深入的了解并且英文不错,请直接移步至官网

Cris 这里大力推荐使用 Anaconda 作为数据分析的工具集和包管理工具,毕竟是 The Most Popular Python Data Science Platform ~,官网在此

关于 Anaconda 的安装和使用,请参考这篇文章,Windows、Mac,Linux 三大平台均有介绍,十分详细~

因为 Anaconda 比较庞大,如果想要精简版的,可以安装miniconda,如何安装请自行百度

如何使用 Jupyter Notebook ,这篇文章其实已经给出了很详细的解答,但是 Cris 仍然希望把自己使用中的一些技巧,总结的经验分享出来,互相学习,upupup!

最后一句话总结:Jupyter Notebook 就是一个针对 Python 的 web 编辑器,轻量级,所见即所得,方便的操作是做数据分析以及机器学习的必备神器!

以下miniconda 部分基于 Windows 平台, Anaconda 部分基于 Linux 平台上

当然,Anaconda 和 miniconda 都是三个平台通用的,如果嫌麻烦,就装 Anaconda,如果想要精简,就装 miniconda

2. 使用 Anaconda(miniconda) 和 Jupyter Notebook

2.1 miniconda 和 Jupyter Notebook 的安装

miniconda 的安装这里不再赘述,可以简单的理解为 Anaconda 的子集,比 Anaconda 精简了非常多,所以比较小巧,但是第三方的包和工具就得自己安装了

关于 miniconda 的使用,其实和 Anaconda 的使用几乎一致,先来简单谈谈 miniconda 如何安装使用 Jupyter Notebook

扫描二维码关注公众号,回复: 5181130 查看本文章

首先需要安装 Jupyter Notebook

安装完毕后,就可以通过 jupyter notebook 命令启动

但是因为 Anaconda(miniconda) 经常会根据项目的不同来建立不同的虚拟环境,这里以 Cris 的miniconda 为例

我们当前只在默认的base 环境下安装了 Jupyter Notebook,如果要想Jupyter Notebook识别 test 虚拟环境,那么还需要在 test 虚拟环境中安装一下 Jupyter Notebook 的kernel 包

(base) C:\Users\cris>conda activate test
复制代码

首先切换到 test 虚拟环境,然后执行以下命令

conda install -n python_env ipykernel
复制代码

python_env 就是你的虚拟环境名,Cris 这里是test.执行完毕后,返回到base环境,再重启Jupyter Notebook

然后Jupyter Notebook 就可以识别不同的虚拟环境了

注意: 如果Jupyter Notebook 还是无法识别虚拟环境(主要是miniconda用户),还需要在base 环境下安装nb_conda包

(base) C:\Users\cris>conda install nb_conda
复制代码

然后再重启Jupyter Notebook 就可以看见上面的虚拟环境了

2.2 Anaconda(miniconda) 的安装和使用

关于 Anaconda ,官网地址

引用维基百科

Anaconda 是一种Python语言的免费增值开源发行版,用于进行大规模数据处理、预测分析,和科学计算,致力于简化包的管理和部署。Anaconda使用软件包管理系统Conda进行包管理。

简单来说,Anaconda 就是专门用于管理 Python 包环境以及部署的工具,同时自带了很多关于数据处理的工具包,例如:Pandas,NumPy 等等,并且还提供了一个网页版本的 Jupiter Notebook 编辑器来方便的编写Python 数据处理代码,类似于 pip3 这种 Python 自带的包下载和管理模块(Anaconda 中是 conda 模块),但是要强大很多。可以简单的理解为一个装满了各种 Python 第三方工具包的仓库,和我们本地的 Maven 有点类似

① 安装 Anaconda

当我们装好 Anaconda 之后,输入以下命令表示 Anaconda 安装成功

O_O[cris@cris:~]$ conda -V
conda 4.5.11
^_^[cris@cris:~]$ 
复制代码

这个版本的 Anaconda 自带的Python 解释器是 3.7 版本,默认 Base 虚拟环境,并且自带了一系列包可以使用

^_^[cris@cris:~]$ conda list
复制代码

查看当前的 Base 环境有哪些包

② 什么是 Base 虚拟环境?

就是当前 Anaconda 默认自带的一个仓库(可以这么理解),在这个仓库中有 Anaconda 自带的很多Python 第三方包,包括Python 解释器(3.7 版本)

实际开发中,每个 Python 项目依赖的包都不同,Python 解释器版本也可能不同;每个Python 项目可能是你一人开发,也可能是多人开发;为了保证每个 Python 项目的环境(Python 解释器和项目依赖包)独立,互不干预,以及同一个Python 项目的所有人开发环境一致,Anaconda 可以为每一个项目单独配置Python 的开发和运行环境,也就是 Anaconda 中的虚拟环境(可以类比为仓库)

③ 创建 Anaconda 虚拟环境

使用 conda create -n your_env_name python=X.X(2.7、3.6等),anaconda 命令创建python版本为X.X、名字为your_env_name的虚拟环境。your_env_name文件可以在Anaconda安装目录envs文件下找到。 指定python版本为2.7,注意至少需要指定python版本或者要安装的包, 在不指定python版本时,自动安装最新python版本。

^_^[cris@cris:~]$ conda create -n test python=3.6
复制代码

然后查看当前 Anaconda 的所有虚拟环境

可以发现 test 虚拟环境创建好了,当前默认是 Anaconda 的Base 环境,怎么切换到 test 环境呢?

④ 切换环境

(base) O_O[cris@cris:~]$ conda activate test
(test) ^_^[cris@cris:~]$ 
复制代码

切换后,我们进入 Python 的Terminal

可以发现Python 版本已经变为了 3.6

退出终端,我们再使用 conda list 命令查看当前 Test 环境下的包

可以发现和 base 环境比,少了很多很多包

⑤ 退出和删除环境

退出当前环境回到默认的 Base 环境非常简单

删除环境也很简单

conda remove -n env_name –all 即可,这里 Cris 就不测试了

⑥ 环境安装包管理

  • 安装指定环境的包(默认当前环境,一般当前环境都是设置为 base)
conda install -n <env_name> <package_name>
# -n 或者 --name 参数就是用来指定环境的
复制代码
  • 当前环境安装包
conda install <package_name>
复制代码
  • 删除指定环境的包
conda remove -n <env_name> <package_name>
复制代码
  • 删除当前环境的包
conda remove <package_name>
复制代码
  • 更新当前环境的包
conda update <package_name>
复制代码
  • 更新当前环境所有包
(base) O_O[cris@cris:~]$ conda update --all
复制代码
  • 更新当前环境多个指定包,则包名以空格隔开,向后排列。如:conda update pandas numpy matplotlib即更新pandas、numpy、matplotlib包。

  • 更新conda,保持conda最新

    conda update conda
    复制代码
  • 更新anaconda

    conda update anaconda 
    复制代码
  • 查找包

    conda search package_name
    # conda search numpy
    复制代码

⑦ 环境复制和导出

conda create --name new_env_name --clone copied_env_name
复制代码

复制的新环境和原环境配置一致

导出当前环境的配置信息

(test) ^_^[cris@cris:~]$ conda env export > environment.yaml
复制代码

发现当前目录下多了一个配置文件

查看这个文件,就是我们当前 test 环境的所有配置信息

name: test
channels:
  - defaults
dependencies:
  - ca-certificates=2018.03.07=0
  - certifi=2018.11.29=py36_0
  - libedit=3.1.20170329=h6b74fdf_2
  - libffi=3.2.1=hd88cf55_4
  - libgcc-ng=8.2.0=hdf63c60_1
  - libstdcxx-ng=8.2.0=hdf63c60_1
  - ncurses=6.1=he6710b0_1
  - openssl=1.1.1a=h7b6447c_0
  - pip=18.1=py36_0
  - python=3.6.8=h0371630_0
  - readline=7.0=h7b6447c_5
  - setuptools=40.6.3=py36_0
  - sqlite=3.26.0=h7b6447c_0
  - tk=8.6.8=hbc83047_0
  - wheel=0.32.3=py36_0
  - xz=5.2.4=h14c3975_4
  - zlib=1.2.11=h7b6447c_3
prefix: /home/cris/module/anaconda3/envs/test
复制代码

这样子就可以在别人电脑上快速搭建统一的环境

# // 用配置文件创建新的虚拟环境
$ conda env create -f environment.yaml
复制代码

参考博客

参考文章

⑧ Anaconda 和 Visual Studio Code 的对接

打开 Visual Studio Code,可以随意调整 Python 的运行环境

⑨ Anaconda 和 PyCharm 对接

稍微麻烦一点,先要新建一个工程

然后选择 Anaconda 环境

项目创建好后,打开project 选项

注意:PyCharm 引用 Anaconda 环境时,项目创建完毕,右下角消息栏可能会报出 Inotify Watches Limit 提示,官方的解决方案链接,照着做即可

**ps:关于 PyCharm 的免费激活,参考**

⑩ 让 Anaconda 飞起来

Anaconda 默认采用的国外镜像网站,这里强力推荐将镜像源换成国内清华大学的镜像

修改文章在此,强力推荐,让你的 Anaconda 跑的比博尔特还快~

注意的是,修改路径均在根目录,并且最新版本的 Anaconda 使用 conda info 查看当前配置信息如下

^_^[cris@cris:~]$ conda info

     active environment : base
    active env location : /home/cris/module/anaconda3
            shell level : 1
       user config file : /home/cris/.condarc
 populated config files : /home/cris/.condarc
          conda version : 4.5.11
    conda-build version : 3.15.1
         python version : 3.7.0.final.0
       base environment : /home/cris/module/anaconda3  (writable)
           channel URLs : https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64
                          https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/noarch
          package cache : /home/cris/module/anaconda3/pkgs
                          /home/cris/.conda/pkgs
       envs directories : /home/cris/module/anaconda3/envs
                          /home/cris/.conda/envs
               platform : linux-64
             user-agent : conda/4.5.11 requests/2.19.1 CPython/3.7.0 Linux/4.15.0-29deepin-generic deepin/15.8 glibc/2.27
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False

复制代码

2.3 Jupyter Notebook 使用

使用 Jupyter Notebook 完成科学计算的测试和开发,已经是现在的主流,下面就简单介绍一下关于 Jupyter Notebook 的使用

参考博客一

参考博客二

快捷键

快捷键参考

具体的使用很简单,在命令行模式下,按下 h 键即可显示快捷键列表,并且还都是中文解释的,赞!

具体的快捷键使用这里不再赘述,想不起来就按 h

Jupyter Notebook 插件拓展

必须提前安装 Jupyter Notebook 插件管理包

(base) C:\Users\cris>conda install -c conda-forge jupyter_contrib_nbextensions
复制代码

然后重启 Jupyter Notebook

插件使用可以参考上面的两篇博客,这里记录Cris 使用插件中碰到的问题

使用格式化插件的时候,如果在新建的虚拟环境下无法使用,需要额外在虚拟环境导入base环境下载好的插件

(test) C:\Users\cris>conda install yapf
复制代码

请先在base环境下执行以上命令,然后就可以在test 环境下使用代码格式化命令了

(ctrl+l 当前单元格格式化代码,shift+ctrl+l 全局单元格格式化代码)

待续...

猜你喜欢

转载自juejin.im/post/5c692612f265da2dd37c0c18