Jupyter notebookでimportできるの?


一番よくわからなかったのが、自分でつくったモジュールをインポートするにはどうしたらいいのか。普段から使っている人には常識かもしれませんが、目からウロコだったので記事にしてみました。

JupyterNotebookについては、Pythonやanaconda関係をググれば必ず出てくるので参考にしてください。

JupyterNotebookは使い方が普通のエディタとは随分ちがうので食わず嫌い。pythonのお勉強にVisualStudioCode、最近はspyderを使っていました。セル内のプログラムをかんたんに実行して結果を表示。ノートは拡張子.ipynb 形式のファイルとして保存するのはわかりました。じゃあ、foo.py のなかに from bar import * って書いて、bar.pyを読み込む方法がわからなかったのですが。

解決方法は、.ipynb形式で作ったノートブックを.py形式に書き出せばよい。[File]-[Download as]-[Python .py]を選んで.ipynbファイルがあるフォルダと同じところに書き出せば、ノートブックからちゃんとimportしてくれます。でも、保存するたびに書き出すなんて面倒。

面倒なら自動化すればいい

この.py形式で書き出す部分を自動化することで、ノンストレスに使えました。

ちゃんとbarと名前をつけたノートブックの変数を、fooのノートブックからimportできています。

こちらのQiitaの記事がズバリ回答。

Jupyterの設定ファイル「~/.jupyter/jupyter_notebook_config.py」に.py形式に自動で書き出すスプリクトを追加するというわけです。

上のスクリプトだと、同時に.htmlファイルも出力されます。不要なら    check_call([‘jupyter’, ‘nbconvert’, ‘–to’, ‘html’, fname], cwd=d) の行を消すか、前に#をつけてコメントアウトすればよいでしょう。

 

You Might Also Like

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください