Help us understand the problem. What is going on with this article?

Visual Studio CodeでPythonコーディングをする設定

More than 1 year has passed since last update.

Visual Studio Codeを使ってみる の続きです。

あとは、lintを設定して、文法チェック等をさせるようにすれば、環境設定としては、だいたい終了なはずだけれど、pep8を呼び出せる用に設定する方法については、宿題ということにして、調べておくことにする。

Visual Studio CodeにPythonの拡張機能をインストールする

以前に書いたとおり、その名もPythonという拡張機能をインストールして、有効化してあります。

lintの設定をする

lintというのは、もともとの意味は糸くずとかそんな意味らしいんだけれど、要するに縫いあがった洋服の糸くずをとるような作業をする、、、とか、そんな由来なんでしょうか。端的に言うと、文法など小姑のようにチェックすることです。

Pythonの文法・表記チェックというと、コーディング規約PEP8準拠かどうかを調べるその名もpep8というコマンドや、pylintというコマンドなどがあります。

今回は、pylintを呼び出すための設定をVisual Studio Codeに対して行います。

pylintのインストールを行う

私はAnacondaで環境構築をしているので、以下のようにして、pylintをインストールします。

まず、anacondaでpylintのパッケージングされているかどうかを検索します。

% anaconda search -t conda pylint

すると、anaconda/pylintがどうやら標準的な配布物っぽいです。

% anaconda show anaconda/pylint
Using Anaconda API: https://api.anaconda.org
Name:    pylint
Summary:
Access:  public
Package Types:  conda
Versions:
   + 1.2.0
   + 1.2.1
   + 1.1.0
   + 1.4.1
   + 1.4.0
   + 1.4.2
   + 1.3.1
   + 1.5.4

To install this package with conda run:
     conda install --channel https://conda.anaconda.org/anaconda pylint

ということで、インストール方法が分かりました。

% conda install --channel https://conda.anaconda.org/anaconda pylint

ちなみにpep8の場合

anaconda環境では、pep8はインストール済でした。

「ユーザー設定」に記載する

Visual Studio Codeのユーザー設定を行います。

ファイルの保存ごとにlintが働いてチェックされるようにするために必要なのは、以下の一文があれば、ほぼ十分です。

    "python.linting.enabled": true

というか、多分、デフォルトでこうなっていて、pylintが走るようになっています。

ちなみに、いやいやpep8派だという場合は、以下のようにするだけです。

    "python.linting.enabled": true,
    "python.linting.pylintEnabled": false,
    "python.linting.pep8Enabled": true

あとは、必要に応じて、以下の設定をしておけば良いと思います。

コードを変更するたびにチェックする場合、ファイルの保存時にチェックする場合は、以下の項目をtrueにします。

    "python.linting.lintOnTextChange": true,
    "python.linting.lintOnSave": true,

以上により、Visual Studio CodeにてPythonコードを記載する際に、lintによる文法・表記方法などのチェックが可能になりました。

2017-12-15 追記

takerushi様から、ご指摘がありました。

詳しくはコメントをご覧いただくとして、

    "python.linting.lintOnTextChange": true,

は廃止されたようです。

fukuit
最近、事務系の職場に異動したので、職業プログラマではなくなりました。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away