pep8を用いてpythonのコードのスタイルをチェックする

Table of Content

2019.08.01

古いので以下を参照してください。
カウボーイには嫌がられるPythonの話
https://needtec.sakura.ne.jp/wod07672/?p=9191

概要

本ドキュメントでは、Python コードのためのコーディングスタイルであるPEP8に違反していないかチェックする方法について説明する。

PEP 8 -- Style Guide for Python Code
http://legacy.python.org/dev/peps/pep-0008/

訳:
https://dl.dropboxusercontent.com/u/555254/pep-0008.ja.html

インストール方法

PEP8 - Python style guide checker をインストールする
https://pypi.python.org/pypi/pep8/

easy_install pep8

または

pip install pep8

これによりコマンドラインからpep8を実行できる。

pep8 test.py
pep8 /test/directory

ディレクトリを指定した場合はサブディレクトリもチェックする

主なオプション

オプション名 説明
--version バージョンを表示する
-h,--help ヘルプを表示する
-v,--verbose チェック中のファイル名などの状態メッセージを表示する。--vvでデバッグメッセージが表示される
-q,--quiet ファイル名のみ表示する。-qqはなにも表示しない。
--first 同じエラーの場合、最初のみ表示する
--exclude=patterns 除外するファイル名やディレクトリ名のパターンを記述する。コンマで区切ることで複数していできる。
デフォルト:.svn,CVS,.bzr,.hg,.git,pycache
--filename=patterns ディレクトリを検索する場合に、ここで指定したパターンのファイルのみ検索する。コンマ区切りで複数指定できる。
デフォルト: *.py
--select=errors エラーや警告を指定する
例:E,W6
--ignore=errors 指定のエラーを無視する
例:E,W6
--show-source 各エラーにソースを表示する
--show-pep8 各エラーにPEP8の説明を追加する。--firstと伴につかったほうがいい
--statistics エラーや警告の数を集計して最後に表示する
--count 最後にエラーと警告の総数を表示する
--config=path 設定ファイルの場所を指定できる。

設定ファイル

configオプションで指定できる設定ファイルには、各オプションの値を指定することができる。

[pep8]
ignore = E111

Pythonからの使用

pep8をimportすることでPythonから使用することもできる。

import pep8
pep8style = pep8.StyleGuide(quiet=True)
ret = pep8style.check_files(['test.py']);
print ret.total_errors

Jenkinsからの利用

Jenkinsのプラグインである、Violationsを使用すれば集計が可能である。

pep8_2.png

シェルスクリプトから実行する場合は次のように先頭に「#!/bin/sh」を記述するのと最後にエラーコードを返さない処理を行う必要がある。

# !/bin/sh
pep8 /share/py/test.py > ${WORKSPACE}/test.txt
echo "....finished"

このような処理をする必要がある理由としては、下記のページを参照の事。
Jenkinsのシェルの実行について
Violationsの設定は下記の通り。

pep8_1.png

XMLで出力する必要はない。

「pep8を用いてpythonのコードのスタイルをチェックする」への1件の返信

カウボーイには嫌がられるPythonの話 – へっぽこ実験ブログ へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 が付いている欄は必須項目です