Pythonでは、基本的にビルドしないので、実行するまでエラーが分からないのですが、Visual StudioのPythonプロジェクトからPyLintというエラーチェックツールが使えるようになっており、エラー、警告を確認することができます。
例えば、以下のようなダメダメコード
import numpy as np
flag = False
flag == True
a = a + 1;
if flag == True:
print("flag:True")
else:
print("flag:False")
このエラーを確認するには、プロジェクトの右ボタン→Python→PyLintの実行 をクリックします。
初めてPyLintを実行する場合は、以下のようにPyLintをインストールするか?を聞かれるので、足りないパッケージをインストールしてからコマンドを実行しますをクリックして、PyLintをインストールします。
すると、以下のようなメッセージが表示されるので、今すぐ昇格をクリックします。
これで、PyLintがインストールされ、PyLintが実行されます。
最初に示したコードでのエラーの解析結果は以下のようになります。
エラーが1つ、警告が3つ、メッセージが9つ。
内容を見てみると、
- エラー Using variable ‘a’ before assignment [E:used-before-assignment]
変数 a が定義される前(値が代入される前)に変数を参照している - 警告 Unused numpy imported as np [W:unused-import]
numpyのインポートは未使用 - 警告 Statement seems to have no effect [W:pointless-statement]
このコードは意味がなさそう - 警告 Unnecessary semicolon [W:unnecessary-semicolon]
セミコロンは必要ありません
となります。
このエラーと警告の分類ですが、エラーに関しては修正すべき内容がほとんど、警告に関しては実行する分には無視できるかもしれない内容ですが、
flag == True
の部分が
flag = True
を意図していた場合は危険な警告なので、警告に関してもできるだけ修正しておいた方が良さそうです。
エラーコードに関しては、こちら↓が参考になると思います。
http://pylint-messages.wikidot.com/all-codes