我是靠谱客的博主 风趣黄蜂,最近开发中收集的这篇文章主要介绍Jupyter Notebook 常用魔法命令,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Jupyter NoteBook 是功能强大的Python交互IDE,深受数据分析师和算法工程师的热爱。Jupyter NoteBook 在综合使用文字、代码、图片等多种元素展示设计者的想法方面有着美妙的用户体验。而其自带的一些常用Magic Command 可以让它变得更加得心应手。

magic函数主要包含两大类,一类是行魔法(Line magic)前缀为%,一类是单元魔法(Cell magic)前缀为%%; 

最常用的魔法函数有以下几个:

1、%lsmagic #打印当前可以用的魔法命令,当我们想使用一个魔法命令,而不知怎么拼写函数名时,可以使用%lsmagic来查询;

%lsmagic
Available line magics:
%alias  %alias_magic  %autocall  %automagic  %autosave  %bookmark  %cat  %cd  %clear 
 %colors  %config  %connect_info  %cp  %debug  %dhist  %dirs  %doctest_mode  %ed  %edit 
 %env  %gui  %hist  %history  %killbgscripts  %ldir  %less  %lf  %lk  %ll  %load  %load_ext  
%loadpy  %logoff  %logon  %logstart  %logstate  %logstop  %ls  %lsmagic  %lx  %macro  
%magic  %man  %matplotlib  %mkdir  %more  %mv  %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  %rep  %rerun  %reset  %reset_selective  %rm  %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  %%debug  %%file  %%html  %%javascript  %%js  %%latex
  %%markdown  %%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.

2、%matplotlib? #魔法命令+?显示魔法命令的说明 Docstring

%ls?
Repr: <alias ls for 'ls -F --color'>
%lsmagic?
Docstring: List currently available magic functions.
File:      /usr/local/lib/python3.5/dist-packages/IPython/core/magics/basic.py

3、%matplotlib inline #使用matplotlib画图时,图片嵌入在jupyter notebook里面,不以单独窗口显示

%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
plt.plot(np.arange(10))
[<matplotlib.lines.Line2D at 0x7f2204c19be0>]

4、%timeit %%timeit #为代码执行计时

import numpy as np
%timeit np.sin(24)
2.42 µs ± 592 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)
%%timeit
x=np.sin(20)
np.cos(-x)
5.08 µs ± 463 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)

5、%%writefile #后面紧接着一个file_name.py,表示在jupyter notebook里面创建一个py文件,后面cell里面的内容为py文件内容

%%writefile test_peace.py
import numpy as np
print(np.random.randint(1,5))

在当前路径下会生成一个test_peace.py的文件,内容就是cell里面的内容

Writing test_peace.py

6、%run #后面紧接着一个相对地址的file_name.py,表示运行一个py文件

%run test_peace.py
3

7、%pwd #和linux一样,查找当前目录

%pwd
'/home/hanxiaoyang/ml_jxy5/0.Teacher/Exercise'

8、%cd #更改当前目录

%cd ../

操作起来和Linux,Unix系统的文件操作差不多

/home/hanxiaoyang/ml_jxy5/0.Teacher

9、%cp #复制文件

%cp test_peace.py test_load.py

10、%whos #查看当前变量,类型,信息

%whos
Variable   Type       Data/Info
-------------------------------
np         module     <module 'numpy' from '/us<...>kages/numpy/__init__.py'>
plt        module     <module 'matplotlib.pyplo<...>es/matplotlib/pyplot.py'>
x          float64    -0.3048106211022167
y          list       n=3

11、%reset #清除变量

%reset
%whos
Interactive namespace is empty.

前面定义的变量就已经全部被清除了
12、%del #清除某一个变量

13、%load #加载一个文件里面的内容

%load test_peace.py
# %load test_peace.py
import numpy as np
print(np.random.randint(1,5))

 

最后

以上就是风趣黄蜂为你收集整理的Jupyter Notebook 常用魔法命令的全部内容,希望文章能够帮你解决Jupyter Notebook 常用魔法命令所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(71)

评论列表共有 0 条评论

立即
投稿
返回
顶部