zoukankan      html  css  js  c++  java
  • Anaconda 和 jupyter notebook入门

    Anaconda & Jupyter Notebook入门

    1.Anaconda 的安装

        Anaconda指的是一个开源的Python发行版本,其包含了conda(第二部分会细致讲解)、Python等180多个科学包及其依赖项,比如 numpy、pandas等等。其中conda是一个开源的包、环境管理器,可以用于在同一个机器上安装不同版本的软件包及其依赖,并能够在不同的环境之间切换。

    1. 下载安装包
          首先,我们进入官网,根据我们的操作系统下载对应的安装包

      如果网速太慢,可以考虑(kx上网)或者是在清华镜像上下载对应的anaconda版本。

    2. 安装anaconda
      直接按照anaconda安装程序中的提示进行下一步,需要注意的步骤,在下面截图给出:
      安装路径根据自己的想法修改:

    2.Anaconda 的环境变量与基本使用

    conda 环境变量设置

        安装Anaconda之后,查看windows开始菜单,发现多了一下这几个应用:

    Anaconda Navigator :用于管理工具包和环境的图形用户界面,后续涉及的众多管理命令也可以在 Navigator 中手工实现。
    Jupyter notebook :基于web的交互式计算环境,可以编辑易于人们阅读的文档,用于展示数据分析的过程。
    qtconsole :一个可执行 IPython 的仿终端图形界面程序,相比 Python Shell 界面,qtconsole 可以直接显示代码生成的图形,实现多行代码输入执行,以及内置许多有用的功能和函数。
    spyder :一个使用Python语言、跨平台的、科学运算集成开发环境。

    下面,我主要介绍一下 conda 的开源包(packages)和虚拟环境(environment)的管理系统。

    首先,安装完成之后,使用conda命令对所有工具包进行升级

    conda upgrade --all
    

    倘若出现上述上述情况,说明 conda 并未放在环境变量中,需要添加到环境变量中。

    本质上来说,我们执行的程序基本都是exe程序(windows),想要在cmd运行程序需要知道程序的路径
    要么通过 cd,dir找到程序所在文件夹中,然后在程序所在的路径下运行该程序
    或者是将应用程序放在系统变量中,直接输入文件名,系统通过处理,补全路径
    这里,我们就是加入到环境变量中,以后使用 conda 的时候,不需要全路径,也不需要转到conda所在文件夹

    添加环境变量也比较简单,我的电脑( ightarrow)属性( ightarrow)高级系统设置( ightarrow)环境变量,然后在用户path或者是系统path中加入你安装 anaconda 下面的 Scripts子目录即可



    下图给出了我在电脑上的anaconda安装路径,对应conda.exe所在的位置,也就是path中需要加入的内容(cmd在该牟目录下,即使path中没有conda,也可以执行conda upgrade --all,但是为了日后使用的方便性,将他加在path中)

    环境变量设置完成之后,使用下面这两个命令查看是否设置成功。

    conda --version
    conda upgrade --all
    

    在这里,我们需要加入3个path

    C:UsersusernameAnaconda3
    C:UsersusernameAnaconda3Scripts
    C:UsersusernameAnaconda3Libraryin
    

    将前缀切换到自己anaconda 的安装位置即可
    第二个环境变量是启动anaconda安装的程序,如ipython,jupyter notebook 等等。
    第三个环境变量

    conda管理Python包和Python环境

        下面我们介绍一下使用命令行来管理虚拟环境(虚拟环境是一个一个python的环境,和不同虚拟机里面的 python 环境类似)

    使用 conda 管理 python 包

    conda install package_name   &::安装一个python包
    conda install package_name1 package_name2 package_name3 &::安装多个python包
    conda install numpy=1.10 &::安装固定版本的包
    conda unintall package_name &::移除一个package
    conda update package_name &::升级package 版本
    conda list &:: 查看所有的packages
    conda search search_term &::conda模糊查询package名称
    

    使用 conda 管理 python 环境

    • conda 创建新环境
    conda create -n env_name python=python版本号 list_of_package
    

    conda create 命令中参数-n 表示的是 environment name(环境名称),python=python版本号指明了详细的python版本号, list_of_package这是说明了除了版本号外,我们还需要下载的包的名称

    conda create -n python_env2 python=3.5 tensorflow
    

    上述命令表明我们创建一个 python3.5 的环境python_env2,除此之外还需要下载一下 tensorflow

    • conda 激活环境
    conda activate envir_name
    conda activate python_env2 &::使用该命令,我们查看刚刚下载的环境
    &::倘若出现问题,可以考虑使用
    activate envir_name
    activate python_env2 &::成功解决
    

    进入到激活的虚拟环境之后,我们可以使用之前的 python 管理包命令进行随意尝试,不要再(base)中尝试即可

    • 退出当前已经激活的环境
    conda deactivate
    deactivate &::倘若上述命令执行不成功,使用该命令退出已经激活的环境
    
    • conda 移除环境
    conda remove -n 环境名称 --all   &::移除环境下所有的包,环境也删除
    conda remove -n python_env2 tensorflow  &::仅仅移除的是tensorflow 相关包,环境依旧处在,conda info -e查看
    
    • conda查看当前所有环境
    conda info -e  &:: conda info 不加参数的话,会显示很多内容,感兴趣可以自己查看
    conda env list &:: 同样是显示当前的环境
    

    下面,创建一个环境,并且和我们 Pycharm进行连接,使用一下 conda 管理的虚拟环境:

    conda create -n pycharm_env python=3.7 requests &::创建一个conda管理的虚拟环境
    conda env list &::查看环境是否创建成功
    activate pycharm_env &::进入到该环境中,我们进行管理
    conda list &::查看pycharm环境下面的包
    conda upgrade --all &::升级一下所有的包
    conda update requests &::单独升级requests包
    conda uninstall requests &::删除requests包
    conda install requests &::安装requests包
    deactivate &::退出当前环境
    

    下面,我们使用conda 创建的 pycharm_env 环境,运行pycharm 上面的程序
    打开pycharm的文件 ( ightarrow) 设置 ( ightarrow) Python Interpreter 添加我们的虚拟环境位置即可!
    如下图所示:




    这样,pycharm使用的就是我们之前创建的虚拟环境了!

    3.jupyter notebook的安装

        上述两部分,我介绍了 Anaconda 的安装,并主要介绍了使用 conda 进行 python 包的管理以及虚拟环境的创建,并将它和 pycharm 进行互联,下面我介绍 anaconda 的另一个工具 jupyter notebook的安装与使用,再次之前我先简要介绍一下 jupyter notebook。

        Jupyter Notebook 的本质是一个 Web 应用程序,便于创建和共享程序文档,支持实时代码,数学方程,可视化和 markdown。 用途包括:数据清理和转换,数值模拟,统计建模,机器学习等等。用python进行数据科学、机器学习的必备工具。

    • 她可以插入Markdown说明文字和Latex数学公式,让枯燥的代码充满颜值,可读性爆表
    • 她能够调用Ipython丰富的“魔法函数”,比如程序计时、重复运行、显示图片等
    • 甚至写好的代码和文档能够以网页和ppt的形式在线分享。在线看Jupyter notebook文件

        下面,我们来介绍一下jupyter notebook 的安装。我们可以通过 anaconda navigator 进行安装,或者是通过命令行的形式进行安装


    使用命令行的形式进行安装

    conda install jupyter notebook  &::就像直接安装 python 包一样
    

    有些同学会出现提示已经安装,但是无法运行缺少module的情况,不要慌,直接百度就好

    上述这种情况,直接去 sqlite3官网下载下来,放到anaconda对应的 dll 文件夹即可(自行百度)

    这里,我在说一下 jupyter notebook 的工作目录 问题:

    1. 在尚未修改|生成 jupyter notebook 配置文件的时候,jupyter notebook 进入之后的工作目录取决于你的 cmd 命令中所处的文件夹位置(推荐cmd 进入 jupyter notebook,因为这样结合我们的 cd 命令,可以很灵活的修改我们jupyter notebook的工作目录)
    2. 生成 jupyter notebook 的配置文件,将jupyter notebook的工作命令给固定死
      jupyter notebook --generate-config &::输入该命令,生成notebook的配置文件
      
      cmd中根据提示的config所在文字,将如下内容进行修改:
      # c.NotebookApp.notebook_dir = ''
      (Rightarrow)c.NotebookApp.notebook_dir = '自己需要放置的位置'
      这样,jupyter notebook 默认的工作路径修改完毕。

    4.jupyter Notebook的使用

        经过步骤1、2、3,相信你已经学会了 Anaconda 的基本使用,并完成的jupyter notebook的安装。下面,我介绍一下 jupyter notebook 的实用方法,帮助大家快速上手 jupyter notebook。
        首先,打开 jupyter notebook,进入到他的 web 页面。这里我们看到的是他的主面板。在菜单栏中有Files、Running、Clusters三个选项。用到最多的是Files,我们可以在这里完成notebook的新建、重命名、复制等操作。具体功能如下:

        主面板的操作比较简单(和windows的文件系统差不多),这里我主要介绍创建 python 文件后,使用python(ipynb)文件的实用技巧。 Notebook 文档是由一系列单元(Cell)构成,主要有两种形式的单元: - 代码单元:这里是你编写代码的地方,通过按 Shift + Enter 运行代码,其结果显示在本单元下方。代码单元左边有 In [1]: 这样的序列标记,方便人们查看代码的执行次序。 - Markdown 单元:在这里对文本进行编辑,采用 markdown 的语法规范,可以设置文本格式、插入链接、图片甚至数学公式。同样使用 Shift + Enter 运行 markdown 单元来显示格式化的文本。

        Jupyter 笔记本有两种不同的键盘输入模式。 编辑模式用于将代码或文本输入到一个单元格中,为绿框单元格;命令模式将键盘与笔记本级命令绑定在一起,为灰框单元格。

    下面主要介绍一下 jupyter notebook 快捷键的使用。
    这里推荐一下我的另外两篇博客,
    markdown基本语法
    LaTeX公式小结--持续更新中
    帮助你更快的学会 markdown 语法。

    jupyter notebook 常用快捷键

    快捷键 作用
    h 查看所有快捷键
    Enter 从命令模式进入编辑模式
    Esc 从编辑模式退回到命令模式
    m 将代码单元格转换为Markdown单元格
    y 将Markdown单元格转换为代码单元格
    shift+Enter 运行本单元格,选择下面的代码块
    ctrl+Enter 运行本单元格
    alt+Enter 运行本单元格,在下方新建一个单元格
    a 在上方新建一个单元格(above)
    b 在下方新建一个单元格(below)
    dd 删除选中的单元格(delete)
    x 剪切本单元格
    c 复制本单元格
    shift v 粘贴到上面
    v 粘贴到下面
    l 显示代码行号

    jupyter notebook 魔术关键字

    魔术关键字(magic keywords),正如其名,是用于控制 notebook 的特殊的命令。它们运行在代码单元中,以 % 或者 %% 开头,前者控制一行,后者控制整个单元。

    比如,要得到代码运行的时间,则可以使用 %timeit;如果要在文档中显示 matplotlib 包生成的图形,则使用 % matplotlib inline;如果要做代码调试,则使用 %pdb。但注意这些命令大多是在Python kernel 中适用的,其他 kernel 大多不适用。有许许多多的魔术关键字可以使用,更详细的清单请参考 Built-in magic commands

    %:行魔法函数,只对本行代码生效。
    %%:Cell魔法函数,在整个Cell中生效,必须放于Cell首行。
    %lsmagic:列出所有的魔法函数
    %magic查看各个魔法函数的说明
    ?后面加上魔法函数名称,可以查看该函数的说明

    一些常用魔法函数的示例:
    魔法函数 作用
    %%writefile 调用外部python脚本
    %run 调用外部python脚本
    %timeit 测试单行语句的执行时间
    %%timeit 测试整个单元中代码的执行时间
    % matplotlib inline 显示 matplotlib 包生成的图形
    %%writefile 写入文件
    %pdb 调试程序
    %pwd 查看当前工作目录
    %ls 查看目录文件列表
    %reset 清除全部变量
    %who 查看所有全局变量的名称,若给定类型参数,只返回该类型的变量列表
    %whos 显示所有的全局变量名称、类型、值/信息
    %xmode Plain 设置为当异常发生时只展示简单的异常信息
    %xmode Verbose 设置为当异常发生时展示详细的异常信息
    %debug bug调试,输入quit退出调试
    %env 列出全部环境变量
    注意这些命令是在Python kernel中适用的,其他 kernel 不一定适用

    jupyter notebook 所有快捷键

    命令行模式快捷键

    编辑模式快捷键

    Ubuntu conda 命令补充

    1. 配置 anaconda 下载源
      配置anaconda的下载源之后,他下载的时候会从国内的清华镜像网下载会很快!
    conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/free/
    conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main/
    conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge/
    conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/bioconda/
    conda config --set show_channel_urls yes 
    conda config --get channels
    
    1. 使用 conda 的一些配置
    conda env list
    
    conda create -n 3.6.7 python=3.6.7
    
    conda activate
    
    conda deactivate
    
    source deactivate
    
    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python
    
    pip install --upgrade -i https://pypi.tuna.tsinghua.edu.cn/simple torch torchvision
    
    

    如果换了之后的镜像太卡的话,可以换回conda默认的源,访问起来可能有些慢,但总比无法访问好。。

    conda config --remove-key channels
    

    参考链接

    anaconda百度百科
    简书:致Python初学者们 - Anaconda入门使用指南
    简书:左手代码,右手写作:你必须会的Jupyter Notebook
    简书:Anaconda的基本使用
    简书:Jupyter Notebook(介绍篇)
    博客园:Anaconda 使用指南
    github:同济子豪兄
    csdn:Ubuntu 16.04系统下conda的安装与使用

  • 相关阅读:
    MySQL主从复制故障1595报错【原创】
    深入理解计算机系统(3.1)------汇编语言和机器语言
    深入理解计算机系统(2.7)------浮点数舍入以及运算
    深入理解计算机系统(2.7)------二进制小数和IEEE浮点标准
    深入理解计算机系统(2.6)------整数的运算
    深入理解计算机系统(2.5)------C语言中的有符号数和无符号数以及扩展和截断数字
    深入理解计算机系统(2.4)------整数的表示(无符号编码和补码编码)
    Spring详解(七)------AOP 注解
    深入理解计算机系统(2.3)------布尔代数以及C语言运算符
    深入理解计算机系统(2.2)------进制间的转换原理
  • 原文地址:https://www.cnblogs.com/lucky-light/p/15460055.html
Copyright © 2011-2022 走看看