Jupyter Notebook魔法(Magic)命令小结

作者 ethanw 日期 2017-05-08
Jupyter Notebook魔法(Magic)命令小结

IPython提供了许多魔法命令,使得在IPython环境中的操作更加得心应手。

魔法命令都以%或者%%开头,以%开头的成为行命令(line magics),%%开头的称为单元命令(cell magics)。行命令只对命令所在的行有效,而单元命令则必须出现在单元的第一行,对整个单元的代码进行处理。

查看所有的魔法命令

使用%lsmagic查看所有的魔法命令

%lsmagic
Available line magics:
%alias  %alias_magic  %autocall  %automagic  %autosave  %bookmark  %cd  %clear  %cls  %colors  %config  %connect_info  %copy  %ddir  %debug  %dhist  %dirs  %doctest_mode  %echo  %ed  %edit  %env  %gui  %hist  %history  %killbgscripts  %ldir  %less  %load  %load_ext  %loadpy  %logoff  %logon  %logstart  %logstate  %logstop  %ls  %lsmagic  %macro  %magic  %matplotlib  %mkdir  %more  %notebook  %page  %pastebin  %pdb  %pdef  %pdoc  %pfile  %pinfo  %pinfo2  %popd  %pprint  %precision  %profile  %prun  %psearch  %psource  %pushd  %pwd  %pycat  %pylab  %qtconsole  %quickref  %recall  %rehashx  %reload_ext  %ren  %rep  %rerun  %reset  %reset_selective  %rmdir  %run  %save  %sc  %set_env  %store  %sx  %system  %tb  %time  %timeit  %unalias  %unload_ext  %who  %who_ls  %whos  %xdel  %xmode

Available cell magics:
%%!  %%HTML  %%SVG  %%bash  %%capture  %%cmd  %%debug  %%file  %%html  %%javascript  %%js  %%latex  %%perl  %%prun  %%pypy  %%python  %%python2  %%python3  %%ruby  %%script  %%sh  %%svg  %%sx  %%system  %%time  %%timeit  %%writefile

Automagic is ON, % prefix IS NOT needed for line magics.

查看各个命令的说明

可以使用%magic查看各个命令的说明

%magic

查看具体命令的说明

在命令后添加?

%alias?

常用的命令总结

  • %matplotlib inline :将matplotlib画出的图直接显示在Notebook之中
  • %timeit : 测试单行语句的执行时间
  • %%timeit : 测试整个单元中代码的执行时间
  • %%prun : 调用profile模块,对单元的代码进行性能剖析
  • %%writefile : 写入文件