Jupyter notebook系列(2):使用技巧(快捷键,多行输出,多光标操作,Unix系统命令的使用,查看输入输出历史,保存记录点与分享,抑制文末输出,图片输出,多环境kernel切换) 您所在的位置:网站首页 pycharm多行编辑取消 Jupyter notebook系列(2):使用技巧(快捷键,多行输出,多光标操作,Unix系统命令的使用,查看输入输出历史,保存记录点与分享,抑制文末输出,图片输出,多环境kernel切换)

Jupyter notebook系列(2):使用技巧(快捷键,多行输出,多光标操作,Unix系统命令的使用,查看输入输出历史,保存记录点与分享,抑制文末输出,图片输出,多环境kernel切换)

2024-03-26 18:30| 来源: 网络整理| 查看: 265

Jupyter notebook 系列

Jupyter notebook系列(1):安装与使用(安装,虚拟环境的联接使用,windows远程连接linux的jupyter)

Jupyter notebook系列(2):使用技巧(快捷键,多行输出,多光标操作,Unix系统命令的使用,查看输入输出历史,保存记录点与分享,抑制文末输出,图片输出,多环境kernel切换)

Jupyter notebook系列(3):魔法函数(查询,运行外部程序,计时,加载文件,变量管理调试,shell交互,图片的显示,查询环境变量,显示运行内核函数,kernel切换)

Jupyter notebook系列(4):插件的安装使用(代码折叠,添加目录,变量监控,代码格式化,运行时间统计,自动补全,自动保存,运行结束提醒)

Jupyter notebook系列(5):主题的安装更换(主题颜色背景,字体字号大小,工具条可见,画图风格设置)

Jupyter notebook系列(6):更高级的配置Mark(显示行号,更改工作路径,使用sudo权限)

文章目录 Jupyter notebook 系列0、前言1、介绍两种模式1.1 模式1:命令模式`command mode`1.2 模式2:编辑模式`edit mode`1.3 两种模式的切换 2、常用快捷键2.1 命令模式下的快捷键(按`Esc`进入命令模式)2.2 编辑模式下的快捷键(按`Enter`进入命令模式) 3、多行输出4、`?`的使用4.1 单个`?`:快速查看文档,输出帮助提示,快速语法说明4.2 `??`:快速查看源码 5、TAB:自动补全6、多光标操作7、jupyter的cell可以作为unix command使用8、查看输入输出历史输入历史方法一:In返回输入列表方法二 %history查看输入历史 输出历史方法一:`Out`调用输出历史方法二:使用下划线表示输出 9、在jupyter中设置link,需要设置两部分10、保存记录点11、分享文档12、抑制末尾函数输出13、图片视频音频等的输出14、做一个PPTLAST、参考文献

0、前言

jupyter notebook是一个在线编辑器,可以在网页上编辑程序,在编辑的过程中,每次编辑一行代码就可以运行一行代码,运行的结果也可以显示在代码的下方,方便查看。当所有的程序编写和运行完毕之后,还可以直接把编辑和运行之后的所有信息保存在文件中。

1、介绍两种模式 1.1 模式1:命令模式command mode

可以对cell等进行操作,快捷键对应于命令模式的快捷键

image-20201117102953672

1.2 模式2:编辑模式edit mode

可以对代码文本进行操作,快捷键对应于编辑模式的快捷键

image-20201117103013969

1.3 两种模式的切换

在一个cell中按下enter就进入edit mode,按下Esc进入command mode。

2、常用快捷键 2.1 命令模式下的快捷键(按Esc进入命令模式)

F:查找并且替换 ctrl-shift-f:打开命令配置(界面中的小键盘也可以启动) ctrl-shift-p:打开命令配置(界面中的小键盘也可以启动)

输入你想要的运行的命令即可搜索,比如我这里将一个cell移动到它下一个cell的下面:在一个cell中(在command模式下),然后按下 Ctrl + Shift + P ,输入 move ,键盘方向键选择要执行的命令即可,然后按下回车即可执行。

image-20201118094250990

Enter:进入编辑模式 P:打开命令配置 Shift-Enter:运行代码块,选择下面的代码块 Ctrl-Enter:运行选中的代码块 Alt-Enter:运行代码块并且插入下面 Y:把代码块变成代码(把整个cell变成代码) M:把代码块变成标签(把整个cell变成Markdown) R:清除代码块格式 1:把代码块变成heading1 2:把代码块变成heading2 3:把代码块变成heading3 4:把代码块变成heading4 5:把代码块变成heading5 6:把代码块变成heading6 K:选择上面的代码块 上:选择上面的代码块 J:选择下面的代码块 下:选择下面的代码块 Shift-上:扩展上面选择的代码块(是多选的含义,把现在的包含进去选择上一个) Shift-K:扩展上面选择的代码块(是多选的含义,把现在的包含进去选择上一个) Shift-下:扩展下面选择的代码块(是多选的含义,把现在的包含进去选择下一个) Shift-J:扩展下面选择的代码块(是多选的含义,把现在的包含进去选择下一个) A:在上面插入代码块 B:在下面插入代码块 X:剪切选择的代码块 C:复制选择的代码块 Shift-V:粘贴到上面 V:粘贴到下面 Z:撤销删除 DD:删除选中单元格 Shift-M:合并选中单元格,如果只有一个单元格被选中 Ctrl-S:保存并检查 S:保存并检查 L:切换行号(在这个cell中显示行号) O:选择单元格的输出(打开或者关闭选中cell的输出,可以控制cell) Shift-O:切换选定单元的输出滚动(打开或者关闭cell的输出是否可以滚动,不可滚动时全部显示) H:显示快捷键(在没有使用Keyboard shortcut editor拓展的时候有效) I:中断服务 O:重启服务(带窗口) Esc:关闭页面 Q:关闭页面 Shift-L:在所有单元格中切换行号,并保持设置 Shift-空格(Space):向上滚动 空格(Space):向下滚动 Ctrl-Home:跳到第一个cell Ctrl-End:跳到最后一个cell Shift-鼠标选择:选择当前cell到选中cell的所有cell

2.2 编辑模式下的快捷键(按Enter进入命令模式)

Tab:代码完成或缩进 Shift-Tab:工具提示 Ctrl-]:缩进 Ctrl-[:取消缩进 Ctrl-A:全选 Ctrl-Z:撤销 Ctrl-/:评论 Ctrl-D:删除整行 Ctrl-U:撤销选择 Insert:切换重写标志 Ctrl-Home:跳到单元格起始处 Ctrl-上:跳到单元格起始处 Ctrl-End:跳到单元格最后 Ctrl-下:跳到单元格最后 Ctrl-左:跳到单词左边 Ctrl-右:跳到单词右边 Ctrl-删除:删除前面的单词 Ctrl-Delete:删除后面的单词 Ctrl-Y:重做 Alt-U:重新选择 Ctrl-M:进入命令行模式 Ctrl-Shift-F:打开命令配置 Ctrl-Shift-P:打开命令配置 Esc:进入命令行模式 Shift-Enter:运行代码块,选择下面的代码块 Ctrl-Enter:运行选中的代码块 Alt-Enter:运行代码块并且插入下面 Ctrl-Shift-减号:在鼠标处分割代码块 Ctrl-S:保存并检查 下:光标下移 上:光标上移

3、多行输出

一般情况下一个 Cell后只能输出一个结果

image-20201117151258983

若想要实现多行输出,请在Cell开头添加以下代码

from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = 'all' # 默认为'last',即输出最后一个结果

image-20201117151419862

4、?的使用

在使用过程中,我们难免会遇到一些我们并不清楚语法格式,查找官方文档是一种解决方案,不过在Jupyter Notebook里内置了快速链接官方文档的用法(类似 Stata 的help命令),在你需要查找的函数(或库名)前敲入?就可浏览快速语法说明。

4.1 单个?:快速查看文档,输出帮助提示,快速语法说明

python自带的函数help()可以获得函数对应的docstring,用iPython的?可以得到相同的结果:

image-20201117151808835

?几乎可以查看任何信息,包括对象的方法,甚至对象本身

对于自己编写的函数,?同样适用,但是前提是函数包含一个docstring

image-20201117151935594

4.2 ??:快速查看源码

如果没有显示源码的话,说明这个函数不是用Python写的,这种情况大多发生在Python的自建函数。

image-20201117152100676

5、TAB:自动补全

image-20201117152318645

6、多光标操作

Jupyter Notebook支持多光标操作,与 Sublime Text 类似。按住 Alt 拖拽鼠标选定操作区域后,再按一下右方向键→即可。点击任何位置返回单光标操作。

7、jupyter的cell可以作为unix command使用

IPython中可以使用Shell指令,避免多个窗口切换。具体方法为:在unitx command前面加入一个感叹号! 查看python版本:!python --version 运行python文件:!python myfile.py 查询安装的库:!pip list | grep pandas

Shell指令可以在这里学:Shell Tutorial

并且形如!ls、!pwd的输出可以通过赋值保存下来(windows系统请用!dir这个命令)

contents = !ls directory = !pwd

用{var}可以把Python的对象在Shell指令中运行

message = "hello from Python" !echo {message}

但是!cd并不能改变文件夹的路径,需要使用%cd来进行更换

image-20201118155108018

8、查看输入输出历史 输入历史 方法一:In返回输入列表

In是一个包含了历史输入的list,In[0]默认为空字符串,In[1]代表第一个输入

image-20201118141647085

单个下划线_包含了上一次的输出,两个下划线__包含了上上次的输出,以此类推,跳过没有输出的cell

print(In[1])

img

方法二 %history查看输入历史 %history -n 1-8

表示查看1-4次的输入 冒号前面是第几次输入

image-20201118141906372

输出历史

可以用两种方式查看输出

方法一:Out调用输出历史

Out返回一个含有输出的命令的序号及其输出组成的字典,两者皆可以通过索引获取元素。

image-20201118142608153

方法二:使用下划线表示输出

_表示上一个输出

__表示前两个输出

_num表示Out[num]

image-20201118142722245

9、在jupyter中设置link,需要设置两部分

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

1

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

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

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

下面是一个例子: 源码: 这里写图片描述 效果图: 这里写图片描述

10、保存记录点

Jupyter Notebook 还有一个很酷的功能:记录点。你可以为当前的 notebook 文件创建一个记录点,保存当前文件的所有状态。创建记录点之后,你可以随时返回到当前的状态,撤销这期间做出的任何修改。

要创建一个新的记录点,你只需要在菜单栏上选择 File(文件)-> Save and Checkpoint(保存记录点)即可。点完之后,你就会在标题旁看到 Checkpoint 保存的提示:

image-20201118144304047

如果你想要返回到之前的 Checkpoint,你只需要在菜单栏上选择 File(文件)-> Revert to Checkpoint(返回到记录点),并点击对应的记录点的时间戳即可。

image-20201118144220206

11、分享文档

使用 Jupyter Notebook的一个好处是可以把.ipynb格式的文件另存为其他格式,再分享其他人。

img

分享 notebook 最简单的方式是直接使用 notebook 文件(.ipynb)。不过对于那些不使用 Jupyter 的人来说,你也可以这么做:

使用菜单项 File > Download as > HTML 将 notebook 转换成 HTML(python也可以 他会自动吧In、Out等注释掉变成所有cell的穿行)。

使用 gist 或 github 分享 notebook,它们都会对 notebook 进行渲染展示。

如果你上传 notebook 到一个 github 仓库,你可以使用十分便利的mybinder服务来允许第三者半小时时间以交互性身份访问你的仓库。

安装jupyterhub, 当你组织一个小型课程或研讨会没有心思关心学生的机器状况时,这是非常方便的。

将 notebook 保存到比如 dropbox 中,然后将链接放到nbviewer. nbviewer将会渲染你存储在任何地方的notebook.

使用 File > Download as > PDF 菜单将 notebook 保存为一个 PDF。如果你打算这么做,强烈推荐你阅读 Julius Schulz 非常棒的一篇文章Making publication ready Python notebooks.

使用 Pelican 搭建一个关于数据科学博客( 译者注:可在这里查看译文 )

12、抑制末尾函数输出

当我们绘制图像的时候,有时图像上方会出现一个函数的输出,比如下面这个

image-20201118144010173

如果不想要这行输出,可以直接在代码末加上一个分号。

image-20201118144021809

13、图片视频音频等的输出

notebook 以 HTML 的方式进行展示,cell 的输出也可以是 HTML,所以事实上你可以返回任何东西:视频/音频/图像。

下面的例子我扫描图片文件,并输出它的缩略图。

import os from IPython.display import display, Image display(Image('./1.jpg', width=100))

image-20201118152634045

14、做一个PPT

(但我还没学会)

[译]27 个Jupyter Notebook的小提示与技巧 - Focus on ML & DM

Damian Avila的 RISE 允许你从已有的一个 notebook 创建一个 powerpoint 风格的报告。

你可以通过 conda 安装 RISE:

conda install -c damianavila82 rise

或通过 pip:

pip install RISE

然后执行下面的代码安装并启用扩展:

jupyter-nbextension install rise --py --sys-prefix jupyter-nbextension enable rise --py --sys-prefix LAST、参考文献

jupyter notebook简单使用教程 - 知乎 Jupyter Notebook使用笔记(一)_y4ung-CSDN博客 Python·Jupyter Notebook各种使用方法记录·持续更新_tina的博客-CSDN博客_jupyter notebook Python·Jupyter Notebook各种使用方法_独木不林的博客-CSDN博客_jupyter怎么运行代码 使用Jupyter Notebook的12个小技巧 - 知乎 jupyter notebook之IPython输入输出历史—初学_直心I-CSDN博客 [译]27 个Jupyter Notebook的小提示与技巧 - Focus on ML & DM



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有