ipython notebook使用教程

最近在使用jupyter notebook,感觉非常舒爽。特别是在本地的浏览器上就可以利用jupyter实现在服务器上编程,更是爽歪歪了。

关于如何实现本地浏览器上进行服务器上编程参照了这篇文章:Ubuntu环境下Anaconda安装TensorFlow并配置Jupyter远程访问.

 

 

1.关于远程访问 jupyter notebook 的设置方式

参考: http://blog.csdn.net/u010694764/article/details/53749953

(1)生成配置文件 

 

  使用如下命令

jupyter notebook --generate-config
  • 1

  会在~/.jupyter目录下生成一个名为jupyter_notebook_config.py的配置文件

(2)准备配置的密码 
  如下所示,

In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password:
Verify password:
Out[2]: 'sha1:67c9e60bb8b6:9ffede0825894254b2e042ea597d771089e11aed'
  • 1
  • 2
  • 3
  • 4
  • 5

  注意保存上面的Out[2]中生成的内容

(3)生成pem和key文件 
  使用如下命令会在当前路径下生成一个mykey.key和一个mycert.pem文件,这两个文件会在后面的配置中使用到。下面的命令会生成有效期为365天的certificate文件。

openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mykey.key -out mycert.pem
  • 1

   
(4)配置配置文件 
  这里主要配置第一步中的jupyter_notebook_config.py文件。需要配置的选项如下:

c.NotebookApp.certfile = u'/absolute/path/to/your/certificate/mycert.pem'
c.NotebookApp.keyfile = u'/absolute/path/to/your/certificate/mykey.key'
# Set ip to '*' to bind on all interfaces (ips) for the public server
c.NotebookApp.ip = '*'
c.NotebookApp.password = u'sha1:bcd259ccf...<your hashed password here>'
c.NotebookApp.open_browser = False

# 指定端口号
c.NotebookApp.port = 8888
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

  配置完成后,在TensorFlow环境下输入jupyter notebook命令,在远程中打开Chrome浏览器,输入https://ip:8888就可以远程访问并使用TensorFLow了。 
  最终效果如下: 
  这里写图片描述

可能是因为Linux服务器防火墙的原因设置完后却链接不上,可以通过下面方式解决:

ssh username@remote_address -L127.0.0.1:1234:127.0.0.1:8881

然后在本地浏览器上面输入: 
https://localhost:1234/tree

 

 

如果 Chrome 无法进入远程链接,在当前页面用键盘输入  thisisunsafe 

2. 进度条使用

最近看到 tqdm 这个模块,用于显示程序的进度条,感觉真心爽,用法也是非常简单,如下图所示:

这样我们就能够实时地看到程序的进度而不需要使用print这种低级的方法了,哈哈。

 

此外,可以使用下面方式来实现进度条显示。\r 表示 return, 所以能够实现刷新单行数据。

```python

for i in xrange(1000):
    sys.stdout.write('\rtime %d' % i)
    sys.stdout.flush()
    time.sleep(0.01)

```

 

3. 快捷键使用

使用notebook也有一段时间了,感觉有些快捷键还是挺常用的。在非输入模式下:

h: 显示所有的快捷键

m: 把当前选中的 cell 调整为 markdown 模式

y: 把当前选中的 cell 调整为 code 模式

a: 在上方添加一个cell

b: 在下方添加一个cell

 

4.原文

原文链接:http://www.cnblogs.com/giserliu/

 

在一次师兄(师兄博客地址)的例会汇报中,介绍了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

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您是刚刚开始学习 IPython,并且需要一个入门教程,我推荐您按照以下步骤进行学习: 1. 安装和启动 IPython:确保您已经安装了 PythonIPython。可以使用 pip 命令来安装 IPython,然后在终端中输入 `ipython` 命令来启动 IPython shell。 2. 探索 IPython shell:了解 IPython shell 的基本功能和特性,如语法高亮、自动补全、历史记录等。可以尝试输入一些简单的 Python 代码并执行,以熟悉 IPython shell 的使用方式。 3. 学习魔术命令:IPython 提供了一些特殊的命令,称为魔术命令(Magic Commands),可以帮助您进行更高级的操作。了解常用的魔术命令,如 `%run`、`%load`、`%pwd`、`%ls` 等,并通过实践来熟悉它们的用法。 4. 使用帮助和文档:IPython 提供了丰富的帮助和文档支持,可以通过 `?`、`??` 和 `%quickref` 等命令来访问相关信息。了解如何查看函数和模块的帮助文档,以及如何通过 `tab` 键进行自动补全和代码提示。 5. 学习 IPython 配置:IPython 允许您进行各种配置,以满足您的个性化需求。了解如何修改 IPython 的默认设置,并探索一些常用的配置选项,如主题、快捷键、自定义函数等。 6. 使用 IPython NotebookIPython NotebookIPython 的一个重要组件,提供了一个交互式的 Web 界面,可以在浏览器中编写和执行代码,并以富文本格式进行展示。学习如何启动和使用 IPython Notebook,并尝试创建一些简单的笔记本。 7. 探索 IPython 扩展:IPython 生态系统中有许多有用的扩展,可以为您的工作提供更多的功能和便利性。了解如何安装和使用一些常用的 IPython 扩展,如 `ipywidgets`、`nbextensions` 等。 8. 学习 IPython 的高级功能:一旦熟悉了 IPython 的基本用法,您可以进一步学习一些高级功能,如并行计算、调试器集成、魔术函数编写等。这些功能能够提升您的工作效率和代码质量。 通过以上步骤,您应该能够入门 IPython,并能够使用它来进行交互式的 Python 编程和数据分析工作。记得多练习和实践,探索更多 IPython 的用法和技巧,以不断提升您的技能水平。祝您学习愉快!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值