在Jupyter Notebooks中,Magic commands(以下简称魔术命令)是一组便捷的功能,旨在解决数据分析中的一些常见问题,可以使用%lsmagic 命令查看所有可用的魔术命令:
魔术命令通常分为两种:
以下列举一些在常见任务中用的较多的魔术命令,一起看看吧。
%matplotlib inline 函数用于在Jupyter notebook中呈现静态的matplotlib图表,若将 inline 替换为 notebook 可以得到可缩放和调整大小的图表,确保在导入matplotlib库之前调用该函数。
%run 函数用于在Jupyter Notebook中运行一个Python脚本。
%pastebin 命令将代码上传到Pastebin并返回URL。Pastebin是一个在线内容托管服务,可以在其中存储纯文本,如源代码片段,然后可以与他人共享URL(与GitHub Gist类似)。
比如存在一个Python文件 file.py,内容如下:
#file.py
def foo(x):
return x
在Jupyter Notebook中使用 %pastebin 会生成一个Pastebin URL:
如果在运行代码单元格时出现异常,可以在新行中键入 %debug 并运行它。这将打开一个交互式调试环境,将用户带到异常发生的位置,还可以检查程序中变量的值,并执行操作,要退出调试器,可以按 q:
%%writefile 将单元格的内容写入文件。如该例,代码将被写入一个名为 foo.py 的文件,并保存在当前目录中:
%%latex 函数将单元格的内容呈现为LaTeX。这对于在单元格中编写数学公式和方程式肥肠有用:
使用 %%time 来获取运行代码单元格所用的时间:
查看已定义的变量列表,可以使用 %whos 或 %who_ls:
到这里一些常用的魔术命令就介绍完毕,感兴趣的可以将每个magic方法拿出来试试。但文章到这没结束,想着继续补充一些朱皮特相关的其他操作。
如果希望打印的数据结构的清晰且美观,pprint 是一个很好的模块(不仅在jupyter,终端啥的俺也常用),在打印字典数据时,尤其有用,如下示例,对比演示如何使用 print 和 pprint 来显示输出:
我们可以在Jupyter中使用提示/注释框来突出显示一些重要的内容或需要引起注意的内容,提示框的颜色取决于指定的提示类型,只需在需要突出显示的单元格中添加以下任意代码:
(1) 蓝色信息框
Tip: Use blue boxes (alert-info) for tips and notes.
If it’s a note, you don’t have to include the word “Note”.
(2) 黄色警示框
Example: Yellow Boxes are generally used to include additional examples or mathematical formulas.
(3) 绿色“成功”信息框
Use green box only when necessary like to display links to related content.
(4) 红色报警框
It is good to avoid red boxes but can be used to alert users to not delete some important part of code etc.
考虑以下示例:
In [1]: 10+5
11+6
Out [1]: 17
这是一个普通单元格的属性,只有最后一个输出会被打印,若想打印其他程序输出,除了挨个进行 print() ,还可以通过在jupyter顶部添加以下片段来打印所有输出:
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"
然后可得到如下结果:
In [1]: 10+5
11+6
12+7
Out [1]: 15
Out [1]: 17
Out [1]: 19
若想恢复默认设置:
InteractiveShell.ast_node_interactivity = "last_expr"
Ctrl/Cmd + / 自动注释掉单元格中选定的行, 再次按住该组合键将取消同一行代码的注释。
以上就是本期的全部内容,期待点赞在看,我是啥都生,下次再见!