• Python·Jupyter Notebook各种使用方法记录


    标签(空格分隔): Python



    Jupyter notebook )前身为IPython Notebook,学习时,可以找两者的教程


    一、 Jupyter NoteBook的安装

    1.1 新版本Anaconda自带Jupyter

    • 目前,最新版本的Anaconda是自带Jupyter NoteBook的,不需要再单独安装
      image_1b4e5l3s6r5i18ok1rnd195i1u549.png-31.6kB

    1.2 老版本Anacodna需自己安装Jupyter

    Jupyter Notebook安装的官方网站

    • 安装Jupyter Notebook的先决条件:已经安装了python(python 2.7 或者是python3.3)

    • 具体的安装方法:

      • 官方建议利用Anaconda安装Jupyter
      • 安装完成Anaconda后,如果该Anaconda并不自带Jupyter Noterbook,那么,打开cmd,输入:conda install jupyter
    • 这样安装完的jupyter不具有New a terminal的功能
      经过各种查询才知道,原来是因为windows不具有terminal需要的TTY,所以,windows下的jupyter是不支持Terminal模式的,而且短期内也没有增加这种支持的计划

    这里写图片描述

    二、 更改Jupyter notebook的工作空间

    2.1 Jupyter的工作空间在哪里指定?

    在其配置文件ipython_notebook_config.py中,有如下一句

    # The directory to use for notebooks and kernels.

    # c.NotebookApp.notebook_dir = u''
    • 1
    • 2
    • 3
    • 1
    • 2
    • 3

    该句就是用来指定其工作空间的,例如,默认的工作空间是:用户名文件夹,例如,现在想要将工作空间变为D:Jupyter,那么,需要做如下更改(要记得删掉注释#)

    # The directory to use for notebooks and kernels.
    c.NotebookApp.notebook_dir = u'D:Jupyter'
    
    • 1
    • 2
    • 3
    • 1
    • 2
    • 3

    注意:路径最后一级后面不要加符号“”

    2.2 如何找到该配置文件?

    • 在cmd中输入jupyter notebook --generate-config
    • 如果该配置文件已经存在,那么,会出现如下信息,从中可以见到配置文件存在的位置,注意,此时,输入N,不要overwrite
      image_1b4e641ot340t3g1asfdv81972m.png-16.9kB
    • 如果该配置文件不存在,那么,将会初始化产生一个配置文件

    在cmd中输入:ipython profile create
    可以找到关于jupyter的配置文件的位置

    三、Jupyter的各种快捷键

    • 执行当前cell,并自动跳到下一个cell:Shift Enter

    • 执行当前cell,执行后不自动调转到下一个cell:Ctrl-Enter

    • 是当前的cell进入编辑模式:Enter

    • 退出当前cell的编辑模式:Esc

    • 删除当前的cell:双D

    • 为当前的cell加入line number:单L

    • 将当前的cell转化为具有一级标题的maskdown:单1

    • 将当前的cell转化为具有二级标题的maskdown:单2

    • 将当前的cell转化为具有三级标题的maskdown:单3

    • 为一行或者多行添加/取消注释:Crtl /

    • 撤销对某个cell的删除:z

    • 浏览器的各个Tab之间切换:Crtl PgUpCrtl PgDn

    • 快速跳转到首个cell:Crtl Home

    • 快速跳转到最后一个cell:Crtl End

    四、Jupyter Notebook如何导入代码

    即导入代码到jupyter notebook的cell中

    4.1 将本地的.py文件load到jupyter的一个cell中

    问题背景:有一个test.py文件,需要将其载入到jupyter的一个cell中
    test.py内容如下:

    import caffe
    SolverName = "/root/workspace"
    sovler = caffe.AdamSolver(SolverName)
    • 1
    • 2
    • 3
    • 1
    • 2
    • 3

    方法步骤
    (1)在需要导入该段代码的cell中输入

    %load test.py #test.py是当前路径下的一个python文件
    • 1
    • 1

    这里写图片描述

    (2)运行该cell
    利用快捷键“Shift+Enter”,可以看到如下结果:
    这里写图片描述

    (3)可以看到,运行后,%load test.py被自动加入了注释符号#,test.py中的所有代码都被load到了当前的cell中

    4.2 从网络load代码到jupyter

    • 在cell中输入%load http://.....,然后运行该cell,就会将load后面所对应地址的代码load到当前的cell中;

    • 下面给出一个例子,导入matplotlib中的一个小例子color example code

      • 首先,在想要导入该段代码的cell中输入

        %load test.py #test.py是当前路径下的一个python文件
        • 1
        • 1
      • 然后,Shift+Enter运行,可以看到如下结果:
        利用load导入python文件
        可以看到,运行后,%load test.py被自动加入了注释符号#,test.py中的所有代码都被load到了当前的cell中

    五、Jupyter运行python文件

    • 利用jupyter的cell是可以运行python文件的,即在cell中运行如下代码:
    %run file.py
    • 1
    • 1

    file.py为要运行的python程序,结果会显示在该cell中
    这里写图片描述
    这里写图片描述

    六、Jupyter一些其他琐碎用法

    6.1 jupyter的cell可以作为unix command使用

    具体方法为:在unitx command前面加入一个感叹号“!”

    例子:
    查看python版本:!python --version
    运行python文件:!python myfile.py

    6.2 Magic functions

    还没有太明白,具体细节见The cell magics in IPython

    6.3 获取current working directory

    即当前运行的代码所在的路径
    具体方法:current_path = %pwd
    这样得到的current_path就是当前工作路径的字符转

    6.4 使用Matplotlib绘图

    在Jupyter Notebook中,如果使用Matplotlib绘图,有时是弹不出图像框的,此时,可以在开头加入

    %matplotlib inline
    • 1
    • 1

    七、Jupyter中的Markdown

    参考1
    Markdown 语法手册 (完整整理版)参考

    7.1 在jupyter中设置link,需要设置两部分:

    • 要跳到的位置(the destination)
      需要在要跳转到的位置添加下面语句:

      <a id='the_destination'></a>
      • 1
      • 1

      这里的id取值任意赋值,下面在添加链接时要用

    • 需要添加链接的文字(an internal hyperlink to the destination),即点击该处可以跳转到the destination,在需要添加链接的文字后面加入:

      [需要添加连接的文字](#the_destination)
      • 1
      • 1
    • 下面是一个例子:
      源码:
      这里写图片描述
      效果图:
      这里写图片描述

    7.2 为Jupyter Notebook添加目录功能

    • 原始的Jupyter是不支持markdown添加目录功能的
    • 实际上,可以利用Jupyter notebook extensions去使得这种功能实现
    • 具体方法:
      • 利用Anaconda安装Jupyter Notebook extensions
        conda install -c conda-forge jupyter_contrib_nbextensions
        image_1b4e9lcot1eo9ing1kk19l3t2713.png-71.7kB
      • 打开Jupyter Notebook,在它的(新增的)Nbextensions标签下勾选“Table of Contents(2)”
        image_1b4ea0o2i1jofnhlu1avj53jl9.png-105.3kB
      • 打开一个.jpynb文件,发现,目录功能可用了!
        image_1b4ea6tov2ld1pckpnlujf4g513.png-101kB

    转载出处
    http://blog.csdn.net/tina_ttl

  • 相关阅读:
    FPGA图像处理之行缓存(linebuffer)的设计一
    Vivado常见问题集锦
    FIFO IP核
    大疆2019校招FPGA笔试总结
    TTL电平与RS232电平的区别
    vivado与modelsim的联合仿真
    Vivado中debug用法
    【错误解决】Error creating bean with name 'transactionManager' :nested exception is java.lang.NoClassDefFoundError: org/springframework/jdbc/datasource/
    【错误解决】The prefix "context" for element "context:component-scan" is not bound
    【转】Spring_IOC学习
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9411665.html
Copyright © 2020-2023  润新知