LoginSignup
33
29

More than 5 years have passed since last update.

VSCodeでJupyterなpyをipynbに変換するツール作った

Posted at

概要

VSCodeのExtensionにJupyterをサポートするものがある。

これは#%%を書くことでCellとしてJupyterで実行できる優れものだが、.ipynbとして保存しておきたい場合には、#%%毎にブラウザ上のJupyterのCellにコピペする必要があり面倒である。

そこで、#%%が含まれる.pyから.ipynbに変換するツールを作った

具体的に言うと

hello.py
#%%
print("Hello")

#%%
print("World!!")

こんなpyがあったら

スクリーンショット 2017-06-16 16.57.56.png

こうなるipynbに変換する

ツール

これ->py2ipynb.py

なおnbformatが必要だが、pip install jupyterした時に一緒にインストールされるので別途必要になることはないはず

使い方

例えばhello.pyを変換したければ、引数として与えて実行するとhello.ipynbが同ディレクトリに生成される。

python py2ipynb.py hello.py

内部でやってること

結局のところ、pyを1行毎に読んでいって先頭に#%%があるかを見つけて、nbformat.v4.new_code_cell()しているだけなのでシンプル。

VSCodeのExtensionが#%%でCellだと区切っているようなのでそこを見ているだけ。

33
29
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
33
29