連載
» 2018年06月19日 05時00分 公開

Visual Studio Codeで始めるPythonプログラミング:あると便利? VS Codeで使えるPython関連の拡張機能 (3/3)

[かわさきしんじ,Insider.NET編集部]
前のページへ 1|2|3       

リアルタイムREPL環境:AREPL拡張機能

 Almenon氏によるAREPL拡張機能は、自分が記述したPythonコードをリアルタイムに評価してくれる環境だ。

AREPL拡張機能 AREPL拡張機能

 この拡張機能のREPL環境では「python -u」コマンドを使用するため、事前にpythonコマンドへのパスが通っている必要がある。また、仮想環境を作成して、それをワークスペースのPython環境とするときには、次の2つの方法がある。

  • 事前にコマンドプロンプトやシェルからその環境を有効化し、そこからVS Codeを起動する
  • AREPL.pythonPath項目に使用する環境のpythonコマンドへのパスを記述する

 後者の方法では、コマンドパレットから[Python: インタープリターを選択]コマンドで設定した環境のpythonコマンドへのパスを指定するように気を付けよう。このコマンドによりpython.pythonPath項目に「${workspaceFolder}」を使用したパスが設定されるが、現状ではAREPL.pythonPath項目はこの形式のパス指定を解釈してくれないので、フルパスを指定する必要があることにも注意。

 その後、コマンドパレットから[AREPL: eval python in real time (current doc)]などのコマンドを実行する。環境を有効にする手間が少し面倒くさいかもしれないが、使ってみるとコードを入力していくそばから、それを評価してくれる。以下に例を示そう。

AREPLを使っているところ AREPLを使っているところ

 上に表示されているのは、モジュールでグローバルな変数の値だ。VS Code(+Python拡張機能)が標準で提供している[Python: ターミナルで Python ファイルを実行]コマンドや[Python: Python ターミナルで選択範囲/行を実行]コマンドでも、自分が書いたコードを簡単にテスト実行できるが、この拡張機能を使うと、コードを書けば、それが即実行され、その結果もすぐに分かる。役立つかはさておき、最初は楽しいはずだ。

VS Code内で公式サイトのドキュメントを参照:Python Docs

 Mukundan氏によるPython Docs拡張機能は、VS Codeのエディタとして公式サイトのドキュメントを開いてくれるものだ。

Python Docs拡張機能 Python Docs拡張機能

 できるのは、コマンドパレットから[Open Python Docs]コマンドを実行することだけだ。これにより、Pythonのバージョンを選択する画面が表示されるので、適切なものを選択する。すると、そのドキュメントがエディタに表示されるというわけだ。

[Open Python Docs]コマンドを実行
[Open Python Docs]コマンドを実行
バージョンを選択
バージョンを選択
ドキュメントが表示される
ドキュメントが表示される

VS Code内からPythonの公式ドキュメントを表示


 ブラウザにフォーカスを切り替えることなく、VS Code内部でドキュメントも参照できると便利という方はインストールしてもよいだろう。

入れる必要はない:MagicPython拡張機能

 逆に入れる必要がない拡張機能もある。

 MagicPython拡張機能は、Pythonコードの構文ハイライトを行うための拡張機能で、VS Marketplaceではかなりのダウンロード数を誇っている。が、説明をよく読むと分かるが、「MagicPythonはVS Codeのデフォルトの構文ハイライトツールとして使われている。最新バージョンを使いたい、使う必要があるということでもない限りはインストールしないように」とある(意訳)。後述するPython Extension PackにもMagicPython拡張機能は含まれているが、これをインストールする必要はないだろう。

拡張機能をまとめてインストール! 拡張機能パック

 VS Marketplaceには「Extension Packs」(拡張機能パック)と呼ばれるカテゴリーがある。名前から想像できる通り、拡張機能パックとは「複数の拡張機能をまとめた拡張機能」のこと。Python用の拡張機能パックとしては5つがヒットするが(2018年6月18日時点)、それらの中でダウンロード数が圧倒的に多いのが次の2つだ。

 前者はVS Code用のPython拡張機能のオリジナルオーサー(であり、その後、Microsoftの社員となった)のDon Jayamanne氏によるもの。後者はMicrosoft純正の拡張機能だ。

Python Extension Pack

 Python Extension Packに含まれるのは以下のものだ。

 Python Extension PackにはPython拡張機能とJupyter拡張機能という、二大拡張機能が含まれている。その他には、上で「インストールしないでいい」と述べたMagicPython拡張機能と、PythonによるWebアプリ開発で役立つ拡張機能がまとめられている。特にWebアプリ開発用の拡張機能もまとめてインストールしておこうという人なら、これを使ってもよいかもしれない。ただし、リポジトリを見る限りは最近は手が入っていないようであるし、上述したように現在では使用が推奨されていないMagicPython拡張機能までインストールされてしまうことを考えると現在ではあえてこれを使う必要はないと筆者は考える。

Anaconda Extension Pack

 一方、Anaconda Extension Packに含まれているのは次の2つだ。

 Anacondaでは環境の構成をYAML形式のファイルとしてエクスポートできる。このことから、環境設定をカスタマイズするようなときには、YAMLをサポートするための拡張機能があると便利だ。そのため、これらがパッケージングされていると思われる。AnacondaとVS Codeという組み合わせをよく使っているのなら、入れておいて損はないだろう。

拡張機能パックを使用する場合の注意点

 今も述べたように、これら2つの拡張機能パックにはVS Code用のPython拡張機能も含まれている。Python拡張機能を既にインストールした状態で、これらをインストールしても問題はないが、アンインストールするときには注意が必要だ。例として、Python Extension Packをアンインストールしようとしているところを以下に示す。

Python Extension Packをアンインストールしようとしているところ Python Extension Packをアンインストールしようとしているところ

 ここで[すべてアンインストール]ボタンをクリックすると、最初からインストールされていたPython拡張機能も含めて、拡張機能パックに含まれる全ての拡張機能がアンインストールされてしまう。一方、[拡張機能のみ]ボタンをクリックすると、Python Extension Pack拡張機能のみがアンインストールされ、それに含まれる拡張機能はアンインストールされない。選択的にどの拡張機能をアンインストールするかを指定はできないので注意しよう。

 また、拡張機能パックを介してインストールした拡張機能を無効化したり、アンインストールしたりしようとしても、元の拡張機能パックとの依存関係を理由として、拒否されてしまう。

Anaconda Extension Packを介してインストールしたYAML Support by Red Hat拡張機能を無効しようとしても拒否される Anaconda Extension Packを介してインストールしたYAML Support by Red Hat拡張機能を無効しようとしても拒否される

 これらを無効化するには、個別にインストールを行うか(個別にインストールしてから、拡張機能パックをインストールした場合には、インストール済みの拡張機能については依存関係うんぬんの警告は表示されない)、拡張機能パックのみをアンインストールすればよい。

 拡張機能パックは、複数の拡張機能をひとまとめにインストールでき、便利にも思えるが、個々の拡張機能を自由に制御したいというときには使用しないのがよいかもしれない。


 本稿では、主に筆者がVS Marketplaceを検索しながら、面白そう、便利そうと思う拡張機能を幾つかピックアップしてきた。読者の皆さんそれぞれにオススメの拡張機能があると思うので何らかの形で紹介してもらえたら幸いだ。

「Visual Studio Codeで始めるPythonプログラミング」のインデックス

Visual Studio Codeで始めるPythonプログラミング

前のページへ 1|2|3       

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。