Jupyter Labの便利な拡張機能を導入しよう!
はじめに
開発をより効率的なものにするために、Jupyter Labには便利な拡張機能が多く存在します。
本記事では化学者のPython活用において、便利な拡張機能の導入方法、インストール後の設定について詳しく解説します。
この記事を読み終えたときに、あなただけの最高の開発環境の構築が完了します!
PythonとJupyter labの導入が完了し、Pythonを使い始めた初学者向けの記事です。
PythonとJupyter Labをインストールして開発環境を構築しよう! はじめに Pythonは手軽に使えて強力な機能を備えたプログラミング言語として、化学者や研究開発担当者の間で注目を集めています。本[…]
Jupyter Labの基本的な使い方と初期設定を徹底解説! はじめに 本記事では化学研究者のPython活用における「相棒」ともいえるJupyter Labの基本的な使い方と初期設定を紹介します。 この記事を読み終え[…]
拡張機能導入前の前準備
Node.jsのインストール
拡張機能を利用する前にNode.jsをインストールする必要があります。
本記事では Node.js公式サイト からのインストールを解説します。簡単4ステップです。
- Node.js公式サイト にアクセスしてインストーラーをダウンロード
—
— - ダウンロードされたmsiファイルを起動し、下図の通り設定を進めて最後にインストールボタンをクリック
—
—
- インストール中にコマンドプロンプトに「続行するには何かキーを押してください」とメッセージが出たら、何かキーを押す
—
—
- インストール完了後に、コマンドプロンプトに以下コードを打ち込んで、バージョン情報が表示されれば完了
node -v
—
拡張機能のインストール
拡張機能のインストール方法はコマンドプロンプトを使った方法(推奨)と、Jupyter lab上で行う方法があります。
それぞれ解説していきます。
コマンドプロンプトで拡張機能導入
コマンドプロンプトにコードを入力してインストールする方法です。
こちらが推奨方法です。
コマンドプロンプトを起動して以下のコードを入力すれば完了です。
今回紹介する拡張機能は4つですが、以下コードをコピペすれば一気に4つ導入完了します。
pip install lckr_jupyterlab_variableinspector jupyterlab-code-formatter black isort jupyterlab-spreadsheet-editor jupyterlab-lsp python-lsp-server[all]
Jupyter lab上で拡張機能導入
一番左にあるパズルのピースのようなボタンをクリックすると、拡張機能の管理画面が左カラムに現れます。
ここの検索窓にキーワードを入力して、適切なものを選んでInstallをクリックすれば導入されます。
検索キーワードを以下に記載しているので、コピペして検索してください。
筆者の環境ではすでにインストールされているため、「INSTALLED」に出ていますが、みなさんは「SEARCH RESULTS」に出るはずです。
拡張機能ごとの検索キーワード:
- lckr-jupyterlab-variableinspector:「variableinspector」で検索。lckrとfrzが出てくるが、lckrをインストール。
- jupyterlab-spreadsheet-editor:「spreadsheet-editor」と検索。
- jupyterlab-code-formatter:「code-formatter」で検索。
- jupyter-lsp-jupyterlab-lsp:「jupyter-lsp-jupyterlab-lsp」と検索。
この方法でインストールした方は、別途必要なものをインストールする必要があるので、以下コードをコマンドプロンプトで実行してください。
pip install black isort python-lsp-server[all]
—
拡張機能の使い方と設定
ここまでで推奨拡張機能4つのインストールが完了しました。
ここからは各機能の概要と使い方、必要な設定について解説していきます。
lckr-jupyterlab-variableinspector(変数管理)
概要
変数の中身をリアルタイムに確認可能にする拡張機能です。
プログラムを書くために変数は必須ですが、プログラムが長くなるとそれだけ変数の数も増え、管理が難しくなってきます。
また、都度変数に適切な値が入っているかをprint関数で確認しながら書くことがほとんどです。
しかし、この拡張機能を使えば、変数の管理も楽になり、print関数での確認が不要になります。
使い方
使い方は以下の通りです。とくに設定は不要です。
簡単な変数を定義して、セルを実行したのちに右クリックメニューからOpen Variable Inspectorを選択してください。
すると、下図のように「Variable Inspector」というタブが生成され、そこに変数の情報が記載されています。
—
jupyterlab-spreadsheet-editor(csvファイル編集)
概要
Jupyter lab上でcsvファイルの閲覧・編集を可能にする拡張機能です。
実験データの生データの多くはcsvファイル形式です。
業務自動化ではcsvファイルを取り扱うことが多いですが、csvファイルの中身を見ながらコードを書くほうが効率的です。
この拡張機能によって、いちいちエクセルを開かなくて済みます。
使い方
Jupyter labのディレクトリにcsvファイルを入れて開くと、下図のように読み込まれます。
とくに設定は不要です。
—
jupyterlab-code-formatter(コード自動整形)
概要
書いたコードを自動で整形してくれる拡張機能です。
PythonにはPEP8というスタイルガイド、つまり可読性の高いコードを書くためのルール(1行の最大文字数や空白の使い方など)があります。
あとで自分で見直しやすい、あるいは他人が見てもわかりやすいコードにするにはこのルールにできるだけ準じたほうがいいです。
しかし、プロのプログラマーを目指すわけではないので、そのルールを覚える必要は全くありません。
拡張機能が自動でやってくれます。
使い方
使い方は以下の通りです。
下図では試しに文法的には問題ないが、推奨されない改行をしています。
右上のマークを押すと、勝手にルールに準じた形に整形されます。
—
しかし、いちいちマークを押すのは手間です。
以下の手順で保存時に自動的に整形されるようにしておきましょう。
この設定をしておけば、何も気にせずコードを書けます。
- 「Settings」→「Settings Editor」で、「Jupyterlab Code Formatter」を選んで、「Suppress formatter errors」にチェック。
次に右上の「JSON Settings Editor」をクリック。
—
—
- 右側の「User Preferences」の中の、“formatOnSave”を”true”に変更(デフォルトはfalse)
—
jupyter-lsp-jupyterlab-lsp(コード補完機能)
概要
Jupyter labではTabキーによってコード補完が可能ですが、他のIDEにはTabキーをいちいち押さなくても勝手に候補が出てくるものがあります。
この拡張機能はJupyter labでもそれを可能にします。
しかし、勝手に表示される候補が邪魔になることもあり、この機能は好き嫌いがあると思います。
筆者は最初は使っていましたが、今は機能をOFFにしています。
実際に使ってみて、不便であれば機能をOFFにすれば大丈夫です。
設定
簡単2ステップです。
- 「Settings」→「Settings Editor」で、「Code Completion」を選んで、「Enable autocompletion」にチェック
※「Code Completion」は2つあるので数を参照してください。
—
—
- もう一つの「Code Completion」を選んで、「Continuous hinting」にチェック
—
—
使い方
実際にコードを打ってみると、下図のように候補が勝手に表示されます。
「pri」まで打つとTabキーを押さなくても候補が表示され、Enterを押すと候補が入力されます。
この拡張機能には補完だけでなく、関数やクラスの説明が表示される機能もあります(下図右)。
—
おわりに
本記事では化学者のためのPython活用に必要な拡張機能を徹底解説しました。
そのままでも使いやすいJupyter labですが、拡張機能によってさらに効率的な開発が可能になります。
今回紹介した拡張機能をぜひ試してみてください!