在一次师兄(师兄博客地址)的例会汇报中,介绍了ipython notebook,当时觉得很酷炫,渐渐自己使用的时候才发现真的很强大。抽空整理下,找了些资料进行补充,并挨个进行了实现,留个笔记,也欢迎喜欢Python编程的码农使用。有不全的欢迎补充。

IPython notebook目前已经成为用Python做教学、计算、科研的一个重要工具。关于其发展,以及介绍,感兴趣可以找文献阅读。本文主要讲解的是它的基本用法和技巧。

IPython Notebook使用浏览器作为界面,向后台的IPython服务器发送请求,并显示结果。

Ipython使用了websocket,它是不支持IE的.一般用Chrome就好了.

好, 说了这么多,我们打开先看下,打开方式很简单,直接cmd进入到你要创建的目录下,然后输入命令:ipython notebook(现在升级了,打开主页显示的是jupyter,所以也可以使用jupyter notebook命令)。

可以看到在浏览器界面中使用单元(Cell)保存各种信息。Cell有多种类型,经常使用的有表示代码的Code单元,和表示格式化文本的Markdown单元。

每个代码单元都有一个输出区域,在Code单元中输入代码,按 Ctrl-Enter 将运行此代码,代码中最后一个表达式的值将输出区域显示。如果希望屏蔽输出,可以在最后一条语句之后添加一个分号:”;”。此外,代码中还可以使用print语句在输出区域中显示信息。

与IPython一样,在cell中可以直接按tab键,可以自动补全,超级实用。

Markdown文本

具体可以参考https://maxiang.io/或者其他文档

  • 文本编辑

Markdown 是一种用来写作的轻量级「标记语言」,它用简洁的语法代替排版,而不像一般我们用的字处理软件 Word 或 Pages 有大量的排版、字体设置。它使我们专心于码字,用「标记」语法,来代替常见的排版格式。

  • 数学公式

可以使用LaTeX公式

创建行内公式,例如 $\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N$。

或者块级公式: $$ x = \dfrac{-b \pm \sqrt{b^2 - 4ac}}{2a} $$

  • 代码块

可以直接在页面输出代码块,只需要在前后加上```代码块 ```即可。

  • 表格

可以使用markdown标记生成表格

嵌入图片

嵌入音乐

可以嵌入本地音乐和网络音乐

嵌入视频

网络视频

本地视频

嵌入网页

嵌入链接

魔法命令

所有以%开头的方法,都是所谓的魔术方法(Magic function),也就是ipython内置的一些方法。需要注意的是,魔术方法有%和%%之分,比如%timeit%%timeit。在ipython中有专门的叫法,前者叫line magic后者叫cell magic。顾名思义,前者是专门针对一行的命令,后者针对多行的命令。

通过%lsmagis可以查看所有的magic命令,使用?或者??可以查看该命令的信息,后者可以查看源码。如: %alias?,会出现该方法的描述。

接下来对一些常用的进行展示:

  • 加载文件

  • 执行文件

run命令还可以附加选项,常用的有-t选项,这个会在脚本执行完后,打印出执行的cpu timings。如果指定了-t选项,后面可以跟一个-Nx,x代表一个数字。表示重复执行x次。

另外比较好用的是-d选项,这个会在pdb中运行脚本。后跟-bxx打断点。

还有一个-p选项,这个选项会开启python profiler,从而打印出详细的执行时间、函数调用等等信息供优化参考。

  • 嵌入绘图

在网页中嵌入绘图库绘制的图形,可以使用%matplotlib inline或者%pylab inline启动这个功能。还可以启动ipython后台服务器时,在命令行下输入ipython notebook --matplotlib inline或ipython notebook --pylab inline。这样的话它就会导入pylab(mathplotlib)库.而且显示图片时可以嵌在网页中的。

  • 执行效率

这个命令用来测试一条命令执行的时间,一般而且,会重复100次运行这个命令,然后取出最好的3个结果取平均值。

还可以指定选项。

-n指定重复次数,默认100

-r是取多少个结果的平均值,默认是3

还有很多的magic命令,就不一一列举,感兴趣可以自己去尝试。


参考:http://hyry.dip.jp/tech/slice/slice.html/35

http://kochiya.me/www/posts/Ipython!.html

http://www.cnblogs.com/zhuangzhuang1988/archive/2012/11/19/2777195.html

http://nbviewer.ipython.org/github/ipython/ipython/blob/3.x/examples/Index.ipynb

ipython notebook使用教程的更多相关文章

  1. ipython+notebook使用教程(转载)

    ipython是python交互环境的增强版 IPython notebook目前已经成为用Python做教学.计算.科研的一个重要工具.IPython Notebook使用浏览器作为界面,向后台的I ...

  2. jupyter(ipython notebook) 安装和入门教程

    近期大家无论是自己做数据分析还是紧急答辩做PPT,可能都需要画一些数据的展示图:以前大家都是用excel画图,但excel画图存在一定的局限性,比如你要画个累积直方图,excel就很麻烦了,所以给大家 ...

  3. Python,Jupyter Notebook,IPython快速安装教程

    0.安装环境 Windows10,Python3.5.1,IPython,jupyter notebook,and other functionality 官方安装文档Linux版3.x 官方安装文档 ...

  4. Ipython的安装/ipython notebook的简单使用

    安装了pyhton的windows版的shell好久了,今天才听说Ipython这个东西,确实在windows下的python shell很难用,一旦输入错误就要重新来过 了解了下ipython,然后 ...

  5. 在Linux服务器上运行Jupyter notebook server教程

    在Linux服务器上运行Jupyter notebook server教程 很多deep learning教程都推荐在jupyter notebook运行python代码,方便及时交互.但只在本地运行 ...

  6. 安装ipython notebook及基本命令(快捷键)

    转载自:http://121.42.47.99/yuenshome/wordpress/?p=2622 目前基本上是Pycharm和ipython notebook结合起来做东西,ipython no ...

  7. Jupyter Notebook使用教程

    关于安装我就不说了,可以参考知乎https://zhuanlan.zhihu.com/p/33105153(总结的很全面) 首先打开Jupyter Notebook后,新建notebook:点击右上角 ...

  8. [转]IPython Notebook简介1

    原文:http://hyry.dip.jp/tech/slice/slice.html/35 Python Notebook简介1 作者 : RY    标签: cython ipython-note ...

  9. 向IPython Notebook中导入.py文件

    IPython Notebook使用起来简洁方便,但是有时候如果需要导入一个现有的.py文件,则需要注意选择导入的方法以达到不同的效果.目前遇到3种方法. (1) 将文件保存为.ipynb格式,直接拖 ...

随机推荐

  1. 自动化构建jenkins配置

    1.安装jdk7+tomcat7 2.下载msi安装文件(我是win7上安装,下载地址 http://Jenkins-ci.org/),文件安装路径选择\tomcat\webapps. 3.安装成功之 ...

  2. 15第十五章UDF用户自定义函数(转载)

    15第十五章UDF用户自定义函数 待补上 原文链接 本文由豆约翰博客备份专家远程一键发布

  3. LINQ 多条件写法

    源代码: string depAll = (ddl_dep1.SelectedValue == "") ? "" : ddl_dep1.SelectedValu ...

  4. Oracle计算时间函数(numtodsinterval、numtoyminterval)

    numtodsinterval(<x>,<c>) ,x是一个数字,c是一个字符串,表明x的单位,这个函数把x转为interval day to second数据类型 常用的单位 ...

  5. 生成dll文件的示例

    看了好多网上写的关于dll文件生成和实用的资料发现多尔不全,都是抄来抄去,有的干脆就是搬用msdn上的原文,实在没有创意和可看的东西.于是本着学和实用的目的自己实践的东西分享给大家. 大前提:使用VS ...

  6. Python传参数最简单易懂的描述

    关于,python的传参,很多人会搞得一头雾水,我也跟朋友讨论多次,最终通过实验,得到结论.   一.所有传递都是引用传递 二.在函数内使用[变量名]=,相当于定义啦一个局部变量   OK,一段简单的 ...

  7. PreResultListener使用

    PreResultListener是一个监听器接口,可以在Action处理完之后,系统转入实际视图前被回调. Struts2应用可以给Action.拦截器添加PreResultListener监听器, ...

  8. CentOS6.5使用本地光盘做yum源 (参考:http://www.jb51.net/os/RedHat/43343.html)

    一.使用光盘做yum源安装软件 mkdir /media/CentOS  #新建CentOS挂载目录 mount -t auto /dev/cdrom /media/CentOS #挂载CentOS光 ...

  9. php简易计算器实例

    <html> <head> <title>PHP实现简单计算器</title> <meta http-equiv="Content-Ty ...

  10. thinkphp使用问题

    下面总结一些,我在使用中遇到的问题,以后遇到了再补充 一.<a>标签的跳转问题 问题:我在控制器Home/Index/index里面使用了Public里面的index.html模板,ind ...