商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > Python数据分析JupyterNotebook3魔法命令详解及示例

Python数据分析JupyterNotebook3魔法命令详解及示例

  发布于2026-07-23 阅读(0)

扫一扫,手机访问

1、魔法命令介绍

魔法命令是Jupyter Notebook里一个非常实用的工具集,但很多人在日常使用中可能只接触了皮毛。实际上,它包含两种类型的指令:Line magics(行魔法)和Cell magics(单元格魔法),加起来超过一百个,覆盖了从文件管理到性能调优的方方面面。下面先看看怎么快速查阅这些命令。

%lsmagic:列出所有magics命令

A vailable line magics:【对当前行使用共计93个】%alias  %alias_magic  %autoawait  %autocall  %automagic  %autosa ve  %bookmark  %cd  %clear  %cls  %colors  %conda  %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  %pip  %popd  %pprint  %precision  %prun  %psearch  %psource  %pushd  %pwd  %pycat  %pylab  %qtconsole  %quickref  %recall  %rehashx  %reload_ext  %ren  %rep  %rerun  %reset  %reset_selective  %rmdir  %run  %sa ve  %sc  %set_env  %store  %sx  %system  %tb  %time  %timeit  %unalias  %unload_ext  %who  %who_ls  %whos  %xdel  %xmode A vailable cell magics:【对当前cell使用共计28个】%%!  %%HTML  %%SVG  %%bash  %%capture  %%cmd  %%debug  %%file  %%html  %%ja vascript  %%js  %%latex  %%markdown  %%perl  %%prun  %%pypy  %%python  %%python2  %%python3  %%ruby  %%script  %%sh  %%svg  %%sx  %%system  %%time  %%timeit  %%writefile

Python数据分析JupyterNotebook3魔法命令详解及示例

%quickref:输出所有魔法指令的简单版帮助文档

Python数据分析JupyterNotebook3魔法命令详解及示例

%Magics_Name?:输出某个魔法命令详细帮助文档

如果你想知道某个魔法命令的具体用法,直接在命令后面加一个问号就行。比如%alias?,会弹出详细的帮助文档,非常方便。

Python数据分析JupyterNotebook3魔法命令详解及示例

2、Line magics:Line魔法指令

Line魔法指令作用于单行代码,用%开头。下面挑几个常用的说说。

%alias:设置指令的别名。Windows系统下默认有8个别名,功能跟Linux下的命令类似。

#Windows下有8个命令In [1]: %alias#Total number of aliases: 8Out[1]:[('copy', 'copy'), ('ddir', 'dir /ad /on'), ('echo', 'echo'), ('ldir', 'dir /ad /on'),#列出文件夹 ('ls', 'dir /on'), ('mkdir', 'mkdir'),#创建文件夹 ('ren', 'ren'), ('rmdir', 'rmdir')]#删除文件夹

Linux下默认有16个,感兴趣可以自己试验一下。

In [3]: %aliasTotal number of aliases: 16Out[3]:[('cat', 'cat'), ('clear', 'clear'), ('cp', 'cp'), ('ldir', 'ls -F -o --color %l | grep /$'), ('less', 'less'), ('lf', 'ls -F -o --color %l | grep ^-'), ('lk', 'ls -F -o --color %l | grep ^l'), ('ll', 'ls -F -o --color'), ('ls', 'ls -F --color'), ('lx', 'ls -F -o --color %l | grep ^-..x'), ('man', 'man'), ('mkdir', 'mkdir'), ('more', 'more'), ('mv', 'mv'), ('rm', 'rm'), ('rmdir', 'rmdir')]

当然,你也可以自己设置别名。不过坦白说,日常工作中这个功能用得不多,但了解一下没坏处。

Python数据分析JupyterNotebook3魔法命令详解及示例

%conda:直接在cell中安装package,写法是%conda install package_names

%dhist:输出历史访问目录,方便你快速切换回之前去过的文件夹。

%history:列出历史输入的指令,效果跟Linux里的history一样。

Python数据分析JupyterNotebook3魔法命令详解及示例

%magic:输出所有魔法指令的帮助文档,相当于一个总的快速参考。

%matplotlib inline:这个应该很熟悉了,效果等价于plt.show(),让图表直接显示在Notebook中。

%notebook:导出当前notebook的所有历史输入到一个文件中。比如%notebook notebook.ipynb会把所有输入保存到指定文件。

%pip:在cell中使用pip指令,省得跑到终端里去操作。

%pwd:输出当前工作路径。

%pycat:预览文件内容,类似Linux里的cat

%run:执行一个Python脚本,直接运行外部文件。

Python数据分析JupyterNotebook3魔法命令详解及示例

%time:测量单条语句的执行时间,非常实用。

Python数据分析JupyterNotebook3魔法命令详解及示例

3、Cell magics:Cell魔法指令

Cell魔法指令作用于整个单元格,用%%开头,可以完成更复杂的操作。

%%writefile:将当前cell中的内容直接写入一个文件,省去手动复制粘贴的麻烦。

Python数据分析JupyterNotebook3魔法命令详解及示例

%%latex:在Notebook中直接写LaTeX公式,编译后显示为数学格式。

%%latex\begin{equation}  \int_0^\infty \frac{x^3}{e^x-1}\,dx = \frac{\pi^4}{15}  \label{eq:sample}\end{equation}

Python数据分析JupyterNotebook3魔法命令详解及示例

%%script:这是一个很强大的命令,可以让你在Notebook里运行bash、perl、ja vascript、python2等脚本。不过需要提醒的是,经过测试,在Jupyter Notebook中这个功能支持得不太友好,但在IPython中运行完全没问题。下面是在IPython中的演示:

写bash程序

In [9]: %%script bash   ...: for i in 1 2 3; do   ...: echo $i;   ...: done123

写perl程序

In [11]: %%script perl    ...: print "hhn";hhn

写python2程序

In [12]: %%script python2    ...: print "hhhn"    ...:    ...:hhhn

参考资料:https://ipython.readthedocs.io/en/stable/interactive/magics.html#

本文转载于:https://www.jb51.net/article/223971.htm 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注