【flake8 python】コードチェッカーflake8のインストールから設定まで
flake8に関して
flake8とは
Flake8: Your Tool For Style Guide Enforcement — flake8 3.3.0 documentation
Pythonのコードチェックツール。
flake8は下記コードチェックツールのラッパーらしいから、flake8を使用することで広範囲のチェックができる。
- PyFlakes(pyflakes : コードのエラーチェック)
- pycodestyle(pycodestyle : PEP8に準拠しているかチェック)
- Ned Batchelder’s McCabe script(mccabe : 循環的複雑度のチェック)
install方法
$ pip install flake8
pipのインストールのに関しての参考サイト
使い方
コードチェックコマンド
flake8 コマンドに続けてファイルまたはディレクトリパスを指定するだけ。
$ flake8 <対象ファイルへのパス>
--statistics オプション
最後に統計が出る。エラーの多いものから出るから、対応すべき順番付けにもなりそう。
--show-source オプション
ソースコードのどの部分を修正すれば良いかが分かりやすくなる。
git commit時に自動実行するよう設定
Gitで管理してるプロジェクトのルートで
$ flake8 --install-hook git
これだけでコミット時にflake8が走るようになる。
チェックに引っ掛かったファイルはコミットできないようにするには、以下のように設定を変える。
$ git config --bool flake8.strict true
これでcommit時に自動でflask8が走り、引っかかったやつはcommitできないようになった。
pre-commit設定に関しての参考サイト
autopep8に関して
autopep8とは
インデントや空白行に関する問題を自動解決してくれる。
これをかけた後、flake8をすればいい。
install方法
$ pip install autopep8
使い方
$ autopep8 -i <対象ファイルへのパス>
(注) -iオプションを抜かすと、修正されたコードがterminal上に表示されるだけで元ファイルは修正されない。
参考文献
flask8,autopep8の使い方に関しての参考サイト
vimでのflake8の使い方に関して。vim使い始めたら見たい。