特集
» 2018年04月24日 05時00分 公開

特集:Visual Studio Codeを使いこなそう!:Visual Studio Codeの設定「虎の巻」:Python編 (1/3)

VS CodeでPythonプログラミングを快適に行うのに必須である拡張機能のインストールと、その機能や設定項目を紹介する。

[かわさきしんじ,Insider.NET編集部]
「特集:Visual Studio Codeを使いこなそう!」のインデックス

連載目次

* 本稿は2017年11月24日に公開した『Visual Studio Codeの設定「虎の巻」:Python編』をバージョン1.22に合わせて改訂したものです。


 前回までは、Visual Studio Code(以下、VS Code)のIDEの全般的な設定方法や、ワークベンチやエディタの配色、構文ハイライトのカスタマイズについて見てきた。今回はVS CodeでPythonプログラミングを行う上で必須となるPython拡張機能と、その使い方と設定項目などについて取り上げる。

 なお、ここではWindows版のVS Code 1.22.2と、Python.orgからインストールしたPython 3.6.5で動作を確認している(macOS版のVS Codeでも一応の確認はした)。

Python拡張機能

 VS CodeでPythonを使ってコードを書こうという場合、Microsoft自身が提供しているPython拡張機能をインストールするのがお勧めだ。この拡張機能をインストールせずに、Pythonファイルを作成すると、VS Codeのウィンドウ右下にPython拡張機能のインストールを推奨するメッセージが表示される(以下の画像。VS Codeのバージョンによっては、ウィンドウ上部に横長のメッセージが表示されるかもしれない)。

Python拡張機能のインストールを推奨するメッセージ Python拡張機能のインストールを推奨するメッセージ

 実際、この拡張機能が提供するのは、次のような機能であり、これらがなければVS CodeでどうやってPythonプログラミングを行えばよいのか分からないくらいだ。

  • Lint機能(使用するLinterを設定可能)
  • IntelliSense
  • 自動インデント/自動フォーマット
  • リファクタリング
  • コードナビゲーション
  • デバッグサポート
  • ユニットテスト
  • VS Codeの統合ターミナルでのPythonコードの実行
  • オフラインのヘルプファイル
  • スニペット

 上の画像にある[インストール]ボタンをクリックすると、インストールが自動的に始まる。最後に[再読み込み]ボタンをクリックして、インストールした拡張機能が有効になる。

Python拡張機能のインストール Python拡張機能のインストール

 これで万事オーケーかというと、そうでもない。次のようにいきなりエラーメッセージが表示される人もいるだろう。

pylintがインストールされていないというメッセージ pylintがインストールされていないというメッセージ

 これはpylint(Python用の代表的なLinter)がインストールされていないか、パスが通っていないために、Python拡張機能がpylintを見つけられていないことを示している。

 それと同時に、次のようなメッセージがステータスバーに表示されるかもしれない。

Python環境の選択を促すメッセージ Python環境の選択を促すメッセージ

 これは複数のバージョンのPythonがインストールされているときなどに表示される(既に使用するPythonのバージョン/環境を選択済みであれば、このメッセージではなく、使用するPythonのバージョン/環境が表示されるはずだ)。

 筆者のWindowsマシンにはPython 3.6.5(64ビット)、Anaconda 4.4.10、Python 2.7.13(32ビット)などのバージョンがインストールしてある。また、macOSであれば、Python 2が標準でインストールされているところに、Python 3をさらにインストールして利用している方もいるだろう。VS CodeのPython拡張機能では、どのバージョン(あるいはvenvやpyenvなどを使って仮想環境を構築しているのであれば、どの仮想環境)を使用するかを選択できるようになっている。

 いずれにせよ、これらのメッセージと出会ったら、それぞれを解決しておこう。どちらを修正すべきかというと、後者からだ。適切なPython環境を選択すれば、pylintも見つかるかもしれないからだ。

 使用するPythonのバージョン/環境を指定するには、上に示した「Select Python Environment」というメッセージ(あるいは、同じ箇所に表示されるPythonのバージョンや環境)をクリックするか、[Ctrl]+[Shift]+[P]キー(macOSでは[Command]+[Shift]+[P]キー)でコマンドパレットを表示して、「select interpreter」などと入力する。これにより、Python機能拡張が認識しているPython環境が一覧表示されるので、そこから使用したいものを選択すればよい。

Python環境の選択 Python環境の選択

 ここで設定した内容は、ワークスペース設定として保存される(VS Codeで開いたディレクトリにある.vscodeディレクトリ内のsettings.jsonファイルに保存される)。この状態で、pylintが見つかれば、「pylintが見つからない」というメッセージは表示されたままでも、pylintによるLintの実行が可能となる。例えば、以下はPython 3.6.5を使用するように設定してから、インデントをわざと間違えてコードを記述したところだ。

使用するPythonのバージョンを指定して、間違ったインデントのコードを記述したところ 使用するPythonのバージョンを指定して、間違ったインデントのコードを記述したところ

 Lint機能を使っている場合、エラーがあるファイルについては、[エクスプローラー]ビューでそのファイル名が赤い文字で表示されるとともに、右側にエラーの数が表示される。

 Pythonのバージョン/環境を指定しても、pylintが見つからない場合には、[Install]ボタンをクリックして、インストールをしておこう。上のメッセージを見ても分かるように、Lint機能そのものを無効化したり、pylintによるLintを無効化したりすることもできる。「Lintとか使わない」という場合には、無効化してもよい。

 注意点としては、Pythonのバージョン/環境指定(実行するpythonコマンドのパス指定)はあくまでもVS Codeが何かを実行するときに参照するものであるということ。統合ターミナルからプログラマーが「手作業」で何らかの作業を行う場合には、実行するPythonを明示的に指定してやる必要があるかもしれない。ただし、コマンドパレットには以下のコマンドがあるので、これらを活用することで、実際には明示的にバージョンを指定するような作業はそれほど多くはないかもしれない(これらのコマンドについては後述する)。

  • [Python: ターミナルで Python ファイルを実行]:現在エディタで編集中の.pyファイルを統合ターミナルで実行
  • [Python: Python ターミナルで選択範囲/行を実行]:現在エディタで選択している範囲を統合ターミナルで実行
  • [Python: REPLを開始]:選択したPython環境でREPLを実行
  • [Python: Create Terminal]:選択しているPython(の仮想)環境を有効化して、統合ターミナルを開く

 特に最後の[Python: Create Terminal]は仮想環境を使っている場合には便利かもしれない。

 なお、pylintのインストールでエラーが発生する場合には「WindowsのVisualStudioCodeでPython」Wikiの「設定」ページなども参考にしよう。

 次にPython拡張機能でできることを幾つか見てみよう。

       1|2|3 次のページへ

Copyright© 1999-2018 Digital Advantage Corp. All Rights Reserved.

RSSについて

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

メールマガジン登録

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