Taka's blog

Techネタなど

Jupyter notebookで.py形式でも保存したい(importされる側)

アブスト

Jupyter notebookでクラスを書いて,他のノートブック(.ipynb)からimportしたかった..ipynb形式のままではインポートできないようなので,.pyを出力してインポートすることになるが,Downloadするんじゃなくて同じ階層に生成さえしてくれればよかった.Jupyterのコマンドで解決した.

ノートブックにこのセルを作っておこう

import subprocess
subprocess.run(['jupyter', 'nbconvert', '--to', 'python', 'ファイル名.ipynb'])

何をやってる?

コマンドラインで,

jupyter nbconvert --to python ファイル名.ipynb

を実行してるのと同じです.
これを,ipynb保存時に自動的に実行する方法がネットに色々落ちていますが,
毎回.pyを生成するのは遅いし必要ないと思ってセルで実装しました.