110
118

More than 3 years have passed since last update.

【画像で説明】VSCodeをJupyter化する ~.pyファイルをセル単位で実行~

Last updated at Posted at 2019-06-24

やること

VSCode上で.pyファイルをJupyterみたいに表示させてみます。
↓VSCode上でこんな感じで表示させたい。
※これはJupyterLabです。
スクリーンショット 2019-06-24 10.08.51.png

なにがうれしいの??

  • VSCodeの機能をつかえる
  • Jupyterのカスタマイズに時間をとられなくてすむ

追記:
※ 現在のVSCodeでは.ipynbファイルを認識できるようになっていますが、vscodevimが動かないのでvim記法を使われる方はこちらのやり方がおすすめです。

環境

  • MacOS X 10.14.5 (Mojave)
  • VSCode 1.35.1

前提

VSCodeのインストール

拡張機能のインストール

表示 > コマンドパレット > 拡張と打つ > ビュー:拡張機能を表示する
スクリーンショット 2019-06-24 10.34.41.png

サイドバーの入力欄にpython と打つ > Pythonを選択 > インストール
スクリーンショット 2019-06-24 10.44.51.png

以前はJupyterという拡張機能をインストールしていましたが、Pythonに統合されたとのこと。

Deprecated This extension is no longer being maintained and all of its functionality has been (or will be) placed into the Microsoft Python extension. Please download the Microsoft Python Extension instead.

このエクステンションはもう保守されておらず、そのすべての機能はMicrosoft Pythonエクステンションに組み込まれています(またはされる予定です)。 代わりにMicrosoft Python Extensionをダウンロードしてください。

実行方法

.pyファイルの先頭に #%% を入力します。
すると勝手にセル実行ボタンが出てきます。
#%%ごとにセルが区切られます
スクリーンショット 2019-06-24 11.01.17.png

  • Run Cell => そのセルのみ実行
  • Run Above => そのセルより上までを実行(自身は含まない)
  • Run Below => そのセルから下を実行(自身を含む)

こんなかんじ

データフレーム
スクリーンショット 2019-06-24 11.09.11.png

プロットも
スクリーンショット 2019-06-24 11.09.51.png

! を行頭にしてコマンド実行
スクリーンショット 2019-06-24 11.10.35.png

Markdownは行頭に#
スクリーンショット 2019-06-24 11.11.25.png

まとめて実行
スクリーンショット 2019-06-24 11.15.49.png

.py => .ipynb へ変換

ここまでは.pyファイルを編集してきました。
jupyterで開きたいときは、.ipynbファイルを出力します。

実行結果タブの右上の保存ボタンで出力して下さい。
実行したセルのみ.ipynb出力されます。
※.ipynbファイルの中身は.jsonの書式です
スクリーンショット 2019-06-24 11.34.51.png

jupyterで開いてみます。
※データフレームのセルとMarkdownのセルだけ出力し保存したものです。

$ jupyter lab main.ipynb

スクリーンショット 2019-06-24 11.48.22.png

.ipynb => .py へ変換

すでにある.ipynbファイルをVSCodeで編集したいときは.pyファイルに変換して編集できます。

サイドバーの.ipynbファイルを右クリック > Import Jupyter Notebook

スクリーンショット 2019-06-24 11.57.34.png

Untitle-~というPythonフォーマットの新しいファイルが開かれるので、.py拡張子で保存して下さい。
スクリーンショット 2019-06-24 12.08.56.png

はまりどころ

実行結果にパッケージエラーが出ている場合は、インタープリタの設定に注意してみてください。
anacondaやvenvやpyenvなど複数環境がある場合は、必要なパッケージがインストールされている環境を選択します。
スクリーンショット 2019-06-24 12.50.47.png

こんなミス、私しかしないと思いますが念の為…。

Dockerコンテナの中で使いたい!

記事書きましたので、もしよろしければ。
=> DockerでAnaconda環境をつくり、コンテナの中でVSCodeを使う

参照

ありがとうございました!

まとめ

変換が少し手間ですが、VSCodeを使えるのであれば余裕で許容ではないでしょうか。
Microsoftさんには、ただただ感謝です。
IEに泣かされた過去は忘れました:relaxed:

110
118
0

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
110
118