Jupyter Notebook各种使用方法

文章目录

  • 一、更改 Jupyter notebook 的工作空间
  • 二、Jupyter的常用快捷键
  • 三、Jupyter Notebook如何导入代码
  • 四、Jupyter运行python文件
  • 五、Jupyter一些其他琐碎用法
    • 5.1 jupyter的cell可以作为unix command使用
    • 5.2 Magic functions
    • 5.3 获取current working directory
    • 5.4 使用Matplotlib绘图
  • 六、Jupyter中的Markdown
    • 6.1 在jupyter中设置link,需要设置两部分:
    • 6.2 为Jupyter Notebook添加目录功能
  • 七. 设置多行输出

一、更改 Jupyter notebook 的工作空间

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

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

# The directory to use for notebooks and kernels.

# c.NotebookApp.notebook_dir = u''

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

# The directory to use for notebooks and kernels.

c.NotebookApp.notebook_dir =u'D:\Jupyter'

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

2 如何找到该配置文件?

在cmd中输入  jupyter notebook --generate-config

如果该配置文件已经存在,那么,会出现如下信息,从中可以见到配置文件存在的位置,注意,此时,输入N,不要overwrite

Jupyter Notebook各种使用方法_第1张图片

如果该配置文件不存在,那么,将会初始化产生一个配置文件

在cmd中输入:ipython profile create

可以找到关于jupyter的配置文件的位置

二、Jupyter的常用快捷键

  1. 运行当前所选 cell,运行后光标仍在所选 cellCtrl + Enter
  2. 运行当前所选 cell,运行后光标移至下一个 cell,若下方无 cell ,则新建一个:Shift + Enter
  3. 添加、撤销注释:Ctrl + ?
  4. 删除当前行:Ctrl + d
  5. 智能提示:Tab

在编辑模式下:(即按 ESC 键或点击单元格左边)

进入编辑模式的单元格左边是蓝色的:

平常是绿色的:

  1. 给所选 cell 加上、撤销行号:L (在 JupyterLab 中需要使用 shift+L
  2. cell 方加入一个 cellA
  3. cell 方加入一个 cell(:B
  4. 删除一个单元格:DD
  5. 剪切单元格:X
  6. 粘贴单元格:V
  7. 进入 MarkDown 编辑模式:M
  8. 退出 MarkDown 编辑模式 : Y

当进入Markdown模式 的时候,cell 左边的 In[]会消失掉:
Jupyter Notebook各种使用方法_第2张图片

编辑好后,运行该单元格即可看到 MarkDown 文本的效果:
Jupyter Notebook各种使用方法_第3张图片

三、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)在需要导入该段代码的cell中输入

%load test.py     #test.py是当前路径下的一个python文件
Jupyter Notebook各种使用方法_第4张图片

(2)运行该cell

利用快捷键 Shift+Enter,可以看到如下结果:

Jupyter Notebook各种使用方法_第5张图片

(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文件

然后,Shift+Enter运行,可以看到如下结果:

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

四、Jupyter运行python文件

利用jupyter的cell是可以运行python文件的,即在cell中运行如下代码:

%run file.py

file.py为要运行的python程序,结果会显示在该cell中

Jupyter Notebook各种使用方法_第6张图片 Jupyter Notebook各种使用方法_第7张图片

五、Jupyter一些其他琐碎用法

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

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

例子:

查看python版本:!python --version

运行python文件:!python myfile.py

5.2 Magic functions

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

5.3 获取current working directory

即当前运行的代码所在的路径

具体方法:current_path = %pwd

这样得到的current_path就是当前工作路径的字符转

5.4 使用Matplotlib绘图

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

%matplotlib inline

六、Jupyter中的Markdown

  • 标题:
    # 一级标题 ## 二级 ### 三级 #### 四级 ##### 五级 ###### 六级
  • 列表

   - 列1
   - 列2
   -列3

   有序列表(1. 列1     2. 列2 )

   !注意-、1. 与文本之间保留一个字符的空格
  • 换行


! br 与 /之间有空格

  • 分割
    使用三个 --- 或 ***

  • 缩进
    tab

  • 链接
    [显示文本](链接地址)
    写法:[百度](https://www.baidu.com)

  • 显示图片

    其中图片链接可直接复制粘贴后看到,width 设置图片大小
    如:

  • 引用
    在开头加 >和一个空格,表示代码的引用, >>即时进行嵌套

如:
Jupyter Notebook各种使用方法_第8张图片

  • 代码区域
    之间即是代码区域or 在'''和'''之间添加对应的代码

  • 文本强调

	*斜体*   
	**加粗**    
	***粗斜体***  
或者 
	_强调_   
	__加粗__    
	___粗斜体___

如:
Jupyter Notebook各种使用方法_第9张图片

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

要跳到的位置(the destination)

需要在要跳转到的位置添加下面语句:

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

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

[需要添加连接的文字](#the_destination)

下面是一个例子:

源码:

Jupyter Notebook各种使用方法_第10张图片

效果图:

Jupyter Notebook各种使用方法_第11张图片

6.2 为Jupyter Notebook添加目录功能

原始的Jupyter是不支持markdown添加目录功能的

实际上,可以利用Jupyter notebook extensions去使得这种功能实现

具体方法:

利用Anaconda安装Jupyter Notebook extensions

conda install -c conda-forge jupyter_contrib_nbextensions

Jupyter Notebook各种使用方法_第12张图片

打开Jupyter Notebook,在它的(新增的)Nbextensions标签下勾选“Table of Contents(2)”

Jupyter Notebook各种使用方法_第13张图片

打开一个.jpynb文件,发现,目录功能可用了!

Jupyter Notebook各种使用方法_第14张图片

七. 设置多行输出

在 cell 中输入:

from IPython.core.interactiveshell import InteractiveShell 
InteractiveShell.ast_node_interactivity = 'all' #默认为'last'

即可实现多行输出(原本是只会输出最下方的 b):

Jupyter Notebook各种使用方法_第15张图片

如果需要一劳永逸的在每个文件中自动实现这个功能,可以在macOS
/Users/your_user_name/.ipython/profile_default/
或者windows
C:\Users\your_profile.ipython\profile_default
文件夹下创建ipython_config.py文件。(mac下你可以在终端进入这个目录touch ipython_config.py来创建)。
然后打开ipython_config.py文件,添加以下两行:

c = get_config()
c.InteractiveShell.ast_node_interactivity = "all"

保存,重启Notebook后生效。

Ref:
https://www.jianshu.com/p/bb0eab1b2535

https://www.jianshu.com/p/a85bc2a8fa56

你可能感兴趣的:(#,工具)