Jupyter notebook魔法命令


魔法命令

IPython内核中有用一些魔法命令,这些指令独立于python语法,只能在jupyter notebook中使用,魔法命令可以完成一些特殊的功能。

如显示图片,执行主机中的shell命令。

魔法命令可以有两种:

  • 行魔法命令(line magic) : 以"%"为前缀,且全部指令(包含主要参数)不可以换行。
  • 单元格法术(cell magic)**: 以"%%"为前缀,整个单元格都是魔法命令,单元格第一行必须是"%%"

常用魔法命令

可以用%lsmagic列出全部魔法函数:

%lsmagic

魔法函数

各个魔法函数的含义如下表格:

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

%%writefile

使用%%writefile魔法保存cell的内容到一个外部文件。%pycat则刚好相反,将某个文件打印出来。

writefile魔法命令

其他命令大家可以自行实验一下。