「特集:Visual Studio Codeを使いこなそう」◆
前回までは、Visual Studio Code(以下、VS Code)のIDEの全般的な設定方法や、ワークベンチやエディタの配色、構文ハイライトのカスタマイズについて見てきた。今回はVS CodeでPythonプログラミングを行う上で必須となるPython拡張機能と、その使い方と設定項目などについて取り上げる。
なお、ここではWindows版のVS Code 1.18.1と、Python.orgからインストールしたPython 3.6.2で動作を確認している(macOS版のVS Codeでも一応の確認はした)。
VS CodeでPythonを使ってコードを書こうという場合、Microsoft自身が提供している*1Python拡張機能をインストールするのがお勧めだ。実際、この拡張機能をインストールせずに、Pythonファイルを作成すると、次の画面のようにPython拡張機能のインストールを推奨するメッセージが表示される。
*1 Don Jayamanne氏が開発していたものが、現在Microsoftが提供するPython拡張機能の大本だが、彼がMicrosoft社員となったことで、それが「Microsoft提供のPython拡張機能」となった。
この拡張機能が提供するのは、次のような機能であり、これらがなければVS CodeでどうやってPythonプログラミングを行えばよいのか分からないくらいだ。
上の画像にある[インストール]ボタンをクリックすると、インストールが自動的に始まる。最後に[再読み込み]ボタンをクリックして、インストールした拡張機能が有効になる。
これで万事オーケーかというと、そうでもない。次のようにいきなりエラーメッセージが表示される人もいるだろう。
これは筆者がここで使用したPython 3.6.3には標準でpylint(Python用の代表的なLinter)がインストールされていないからだ。使用しているPython処理系で既にpylintがインストールされていれば、このメッセージには遭遇しないだろう。
ここで[Install pylint]ボタンをクリックすれば、pipコマンドを利用して、pylintのインストールが行われる。はずなのだが、Windowsではpythonコマンドへのパスが通っていないと、インストールできないという問題に直面する人もいるだろう(その一方で、Windowsでは環境変数PATHにpythonコマンドへのパスを含まないようにして、実際に起動するPythonはpyコマンドで切り分けるような仕組みを利用するのが一般的となっているので、パスを通すか通さないかは微妙な問題だ)。また、macOSには標準でPython 2.7がインストールされている。そのため、単純にpythonコマンドを実行しようとすると、こちらが呼び出されてしまう。
つまり、VS Codeからpylintをインストールしようとすると、デフォルトの設定では問答無用でpythonコマンドが呼び出されてしまうことが問題だ。Windowsならpyコマンドやpython3コマンドを使って、macOSならpython3コマンドを使ってpylintをインストールできるようにしたいところだ。
そこでpylintをインストールする前に、ワークスペース単位で使用するPythonのバージョン(とは、つまり実際に使用するpythonコマンドへのパス)を明示的に指定してやるのがよい。これには、コマンドパレットを表示して「select interpreter」などと入力して、「Python: Select Interpreter」コマンドを実行し、そこから使用するPythonのバージョンを選択する。これはワークスペース設定の「python.pythonPath」項目に記録される。その後、[Install pylint]ボタンをクリックすれば、pythonコマンドではなくpython3コマンドを使ってpylintのインストールが行われるようになる。
注意点としては、Pythonのバージョン指定(実行するpythonコマンドのパス指定)はあくまでもVS Codeが何かを実行するときに参照するものであるということ。統合ターミナルからプログラマーが「手作業」で何らかのパッケージを使用するといった場合には、やはりpyコマンドやpython3コマンドを使う必要があるのが少し面倒くさいところだ。
なお、venv(Pythonに標準で付属する仮装環境構築ツール)などを利用して、仮装環境を構築し、環境ごとにpythonコマンドへのパスが通っている場合には問題なくインストールできるはずだ(次回に見ていく予定だ)。
pylintのインストールが完了すると、次の画面のようにpylintからお小言をちょうだいできるようになる*2。
このようにPython拡張機能を利用することで、VS Codeの中で基本的な作業やコーディングを完結させることができるようになる。次にPython拡張機能でできることを幾つか見てみよう。
*2 pylintのインストールでエラーが発生する場合には「WindowsのVisualStudioCodeでPython」Wikiの「設定」ページなども参考にしよう(筆者が試したところではPython.orgからダウンロード/インストールしたPython 3.6.3のままではうまくpylintがインストールできなかった(それもあり、うまくインストールできたPython 3.6.2で動作を検証している)。
Copyright© 1999-2017 Digital Advantage Corp. All Rights Reserved.
社内システムの運用管理業務に日々追われて、本来取り組むべきIT戦略計画の業務に手が回っていない…。PCライフサイクル全体をカバーする運用管理サービスとは
@IT Special
- PR -TechTargetジャパン
Insider.NET 記事ランキング