IPython0.12の新機能notebookを動かしてみた

IPython0.12がリリースされました。

0.12 Series — IPython v0.12 documentation

whatsnewから見出しだけ抜き出した。

  • An interactive browser-based Notebook with rich media support
  • Two-process terminal console
  • Tabbed QtConsole
  • Full Python 3 compatibility
  • Standalone Kernel
  • PyPy support

中身はあんまり読んでないけど、「browser-based」ってところが新しい!と思ったのでとりあえず試してみた。

セットアップ

OSはMac OS X Lion。

mkvirtualenv --no-site-packages --distribute ipython
pip install ipython

新しい環境作ってipythonをインストール。そして実行!

ipython notebook

tornadoがねえよ と言われる。ですよねーブラウザベースだしWebサーバ必要ですよねー。インストールして再度実行!

pip install tornado
ipython notebook

今度はzmqモジュールが見つからねえよ と言われる。zmqってなんですか?
で、ぐぐってみたところzmqというのはZeroMQというメッセージキューのPythonバインディングモジュールらしい。

zeromq: Fastest. Messaging. Ever.

ZeroMQについては割愛。こことかここを読むとなんとなくわかった気になれるかも。

brew searchしたらあったのでそこからインストール。楽ちん楽ちん。

brew install zeromq

あっさりと入ってくれました。で、あとはPythonバインディングをインストールする。

pip install pyzmq

では、いってみよー。

ipython notebook
[NotebookApp] Using existing profile dir: u'/Users/kenjiro/.ipython/profile_default'
[NotebookApp] The IPython Notebook is running at: http://127.0.0.1:8888
[NotebookApp] Use Control-C to stop this server and shut down all kernels.
[NotebookApp] Using MathJax from CDN
[NotebookApp] Kernel started: cd9c31c0-2fbb-41cf-9610-cb6cf27cc148
[NotebookApp] Connecting to: tcp://127.0.0.1:50420
[NotebookApp] Connecting to: tcp://127.0.0.1:50421
[NotebookApp] Connecting to: tcp://127.0.0.1:50423
[IPKernelApp] To connect another client to this kernel, use:
[IPKernelApp] --existing kernel-cd9c31c0-2fbb-41cf-9610-cb6cf27cc148.json

ぞろぞろとメッセージが出力されるとともに、自動的にChromeが新しいウィンドウで立ち上がりました。やったー、動いたよー!

f:id:inoshirou:20111220015117p:image:w600

こんな感じ。tab補完もきいてます。
動かしてみたけど、これってどう活用すればいいんでしょ?だれか知ってたら教えてください。

おしまい。