これは、Ubuntu Online、Fedora Online、Windowsオンラインエミュレーター、MACOSオンラインエミュレーターなどの複数の無料オンラインワークステーションの3つを使用してOnWorks無料ホスティングプロバイダーで実行できるコマンドpylintXNUMXです。
プログラム:
NAME
ピリント -Pythonコード静的チェッカー
SYNOPSIS
ピリント [ OPTIONS ] [ ]
DESCRIPTION
ピリント プログラミングエラーを探すPythonソースコードアナライザーであり、
コーディング標準を適用し、いくつかのコードの臭いを嗅ぐ(MartinFowlerの
リファクタリングブック)
PyCheckerで実行できるほぼすべてのテストがあるため、Pylintは別のPyCheckerと見なすことができます。
Pylintでも実行できます。 ただし、Pylintには、チェックなど、さらにいくつかの機能があります。
コードの行の長さ、変数名が
標準のコーディング、または宣言されたインターフェイスが本当に実装されているかどうかのチェックなど。
さらに、独自のチェックを追加するプラグインを作成することもできます。
Pylintには、「pylint-gui」、「pyreverse」(UMLダイアグラムジェネレーター)、「symilar」(
独立した類似性チェッカー)。
OPTIONS
- バージョン
プログラムのバージョン番号を表示して終了します
-ヘルプ、-h
このヘルプメッセージを表示して終了します
--長いヘルプ
より詳細なヘルプ。
MASTER
--rcfile =
構成ファイルを指定します。
--init-hook =
実行するPythonコード。通常、pygtk.require()などのsys.path操作用です。
-エラーのみ、-E
エラーモードでは、エラーメッセージのないチェッカーは無効になり、その他の場合は無効になります。
エラーメッセージが表示され、デフォルトではレポートは作成されません
--py3k Python 3移植モードでは、すべてのチェッカーが無効になり、メッセージのみが発行されます
移植チェッカーによって表示されます
--ignore = [、 ...]
ファイルまたはディレクトリをブラックリストに追加します。 パスではなく、ベース名にする必要があります。
[現在:CVS]
--persistent =
Pickleは、後で比較するためにデータを収集しました。 [現在:はい]
--load-plugins =
ロードするプラグインのリスト(Pythonモジュール名のコンマ区切り値として)、
通常、追加のチェッカーを登録します。 [現在:なし]
--jobs = 、 -NS
複数のプロセスを使用して、Pylintを高速化します。 [現在:1]
--extension-pkg-whitelist =
C拡張子が含まれる可能性のあるパッケージ名またはモジュール名のコンマ区切りリスト
ロードされました。 拡張機能がアクティブなPythonインタープリターに読み込まれ、実行される可能性があります
任意のコード[現在:なし]
コマンド
--help-msg =
指定されたメッセージIDのヘルプメッセージを表示して終了します。 値はコンマの場合があります
メッセージIDの個別のリスト。
--list-msgs
pylintのメッセージを生成します。
--list-conf-levels
pylintのメッセージを生成します。
-完全なドキュメント
pylintの完全なドキュメントを生成します。
--generate-rcfile
現在の構成に従ってサンプル構成ファイルを生成します。 君は
このオプションの前に他のオプションを配置して、生成された構成に含めることができます。
メッセージ CONTROL
--confidence =
リストされた信頼水準でのみ警告を表示します。 すべてを表示するには、空のままにします。
有効なレベル:HIGH、INFERENCE、INFERENCE_FAILURE、UNDEFINED [現在:なし]
--enable = 、-e
指定されたIDでメッセージ、レポート、カテゴリ、またはチェッカーを有効にします。 あなたはできる
複数の識別子をコンマ(、)で区切るか、このオプションを複数に設定します
時間。 例については、「-disable」オプションも参照してください。
--disable = 、 -NS
指定されたIDのメッセージ、レポート、カテゴリ、またはチェッカーを無効にします。 あなたはできる
複数の識別子をコンマ(、)で区切るか、このオプションを複数に設定します
時間(コマンドラインでのみ、必要な構成ファイルではありません)
「--disable = all」を使用して、最初にすべてを無効にし、
次に、特定のチェックを再度有効にします。 たとえば、
類似性チェッカー、「-disable = all --enable = similarities」を使用できます。 もし、あんたが
クラスチェッカーのみを実行したいが、警告レベルのメッセージが表示されていない、
"--disable = all --enable = classes --disable = W"を使用します
レポート
--output-format = 、 -NS
出力形式を設定します。 使用可能な形式は、テキスト、解析可能、色付き、msvsです。
(ビジュアルスタジオ)とhtml。 レポータークラスを提供することもできます。
mypackage.mymodule.MyReporterClass。 [現在:テキスト]
--files-output =
コマンドで指定されたモジュール/パッケージごとに個別のファイルにメッセージを配置します
stdoutに印刷する代わりにline。 レポート(ある場合)はファイルに書き込まれます
名前は「pylint_global。[txt | html]」です。 [現在:いいえ]
-レポート= 、 -NS
完全なレポートを表示するか、メッセージのみを表示するかを指示します[現在:はい]
--evaluation =
10未満の音符を返す必要があるPython式(10が最高の音符です)。
変数エラーの警告、ステートメントにアクセスできます。
エラー/警告メッセージの数とステートメントの総数が含まれています
分析した。 これは、グローバル評価レポート(RP0004)で使用されます。 [現在:10.0-
((float(5 *エラー+警告+リファクタリング+規則)/ステートメント)* 10)]
-コメント=
評価ノートに従ってコメントを追加します。 これはグローバルで使用されます
評価レポート(RP0004)。 [現在:いいえ]
--msg-template =
メッセージの表示に使用されるテンプレート。 これは、Pythonの新しいスタイルのフォーマット文字列です。
メッセージ情報をフォーマットします。 詳細については、ドキュメントを参照してください
EXCEPTIONS
--overgeneral-例外=
キャッチされたときに警告を発する例外。 デフォルトは「例外」
[現在:例外]
クラス
--ignore-iface-methods =
無視するインターフェースメソッドのリスト。コンマで区切ります。 これは
メソッドをチェックしないインスタンスは、ZopeのInterface基本クラスで定義されています。 [現在:
isImplementedBy、deferred、extends、names、namesAndDescriptions、queryDescriptionFor、getBases、getDescriptionFor、getDoc、getName、getTaggedValue、getTaggedValueTags、isEqualOrExtendedBy、setTaggedValue、isImplementedByInstancesOf、adaptWith、is_implemented_by]
--defining-attr-methods =
インスタンス属性の宣言(つまり割り当て)に使用されるメソッド名のリスト。 [現在:
__init __、__ new __、setUp]
--valid-classmethod-first-arg =
クラスメソッドの最初の引数の有効な名前のリスト。 [現在:cls]
--valid-metaclass-classmethod-first-arg =
メタクラスクラスメソッドの最初の引数の有効な名前のリスト。 [現在:
マックズ]
--exclude-protected =
保護されたアクセスの警告から除外する必要があるメンバー名のリスト。
[現在:_asdict、_fields、_replace、_source、_make]
ロギング
--logging-modules =
文字列形式の引数がロギング関数にあることを確認するためのロギングモジュール
パラメータ形式[現在:ロギング]
変数
--init-import =
__init__ファイルで未使用のインポートをチェックする必要があるかどうかを指示します。 [現在:いいえ]
-ダミー変数-rgx =
ダミー変数の名前に一致する正規表現(つまり、予想されない
中古)。 [現在:_ $ |ダミー]
--additional-builtins =
ビルトインで定義されることになっている追加の名前のリスト。 あなたを覚えておいてください
可能な場合は、新しいビルトインを定義しないようにする必要があります。 [現在:なし]
-コールバック=
コールバック関数を名前で識別できる文字列のリスト。 コールバック名
これらの文字列のいずれかで開始または終了する必要があります。 [現在:cb _、_ cb]
設計
--max-args =
関数/メソッドの引数の最大数[現在:5]
--ignored-argument-names =
この式に一致する引数名は無視されます。 デフォルトの名前
先頭の下線[現在:_。*]
--max-locals =
関数/メソッド本体のローカルの最大数[現在:15]
--max-returns =
関数/メソッド本体のリターン/イールドの最大数[現在:6]
--max-branches =
関数/メソッド本体の分岐の最大数[現在:12]
--max-statements =
関数/メソッド本体のステートメントの最大数[現在:50]
--max-parents =
クラスの親の最大数(R0901を参照)。 [現在:7]
--max-attributes =
クラスの属性の最大数(R0902を参照)。 [現在:7]
--min-public-methods =
クラスのパブリックメソッドの最小数(R0903を参照)。 [現在:2]
--max-public-methods =
クラスのパブリックメソッドの最大数(R0904を参照)。 [現在:20]
BASIC
-必須-属性=
カンマで区切られたモジュールに必要な属性[現在:なし]
--bad-functions =
使用してはならない組み込み関数名のリスト(コンマで区切る)
[現在:マップ、フィルター、入力]
--good-names =
コンマで区切って常に受け入れる必要のある適切な変数名[current:
i、j、k、ex、Run、_]
--bad-names =
常に拒否する必要のある不正な変数名。コンマで区切ってください[現在:
foo、bar、baz、toto、tutu、tata]
--name-group =
コロンで区切られた名前のセットは、次の場合に互いの命名スタイルを決定します。
名前の正規表現では、いくつかのスタイルを使用できます。 [現在:なし]
--include-naming-hint =
invalid-name [current:no]を使用して正しい命名形式のヒントを含める
--function-rgx =
正しい関数名に一致する正規表現[現在:[a-z _] [a-
z0-9 _] {2,30} $]
--function-name-hint =
関数名の命名のヒント[現在:[a-z _] [a-z0-9 _] {2,30} $]
-変数-rgx =
正しい変数名に一致する正規表現[現在:[a-z _] [a-
z0-9 _] {2,30} $]
-変数名-ヒント=
変数名の命名のヒント[現在:[a-z _] [a-z0-9 _] {2,30} $]
--const-rgx =
正しい定数名に一致する正規表現[current:(([A-Z _] [A-
Z0-9 _] *)|(__。* __))$]
--const-name-hint =
定数名の命名のヒント[現在:(([A-Z _] [A-Z0-9 _] *)|(__。* __))$]
--attr-rgx =
正しい属性名に一致する正規表現[現在:[a-z _] [a-
z0-9 _] {2,30} $]
--attr-name-hint =
属性名の名前付けのヒント[現在:[a-z _] [a-z0-9 _] {2,30} $]
-引数-rgx =
正しい引数名に一致する正規表現[現在:[a-z _] [a-
z0-9 _] {2,30} $]
--argument-name-hint =
引数名の命名のヒント[現在:[a-z _] [a-z0-9 _] {2,30} $]
--class-attribute-rgx =
正しいクラス属性名に一致する正規表現[現在:([A-Za-z _] [A-
Za-z0-9 _] {2,30} |(__。* __))$]
--class-attribute-name-hint =
クラス属性名の命名のヒント[現在:([A-Za-z _] [A-Za-
z0-9 _] {2,30} |(__。* __))$]
--inlinevar-rgx =
正しいインライン反復名に一致する正規表現[現在:[A-Za-z _] [A-
Za-z0-9 _] * $]
--inlinevar-name-hint =
インライン反復名の名前付けのヒント[現在:[A-Za-z _] [A-Za-z0-9 _] * $]
--class-rgx =
正しいクラス名に一致する正規表現[現在:[A-Z _] [a-zA-Z0-9] + $]
--class-name-hint =
クラス名の命名のヒント[現在:[A-Z _] [a-zA-Z0-9] + $]
--module-rgx =
正しいモジュール名に一致する正規表現[現在:(([a-z _] [a-z0-9 _] *)|([A-
Z] [a-zA-Z0-9] +))$]
--module-name-hint =
モジュール名の命名のヒント[現在:(([a-z _] [a-z0-9 _] *)|([AZ] [a-zA-Z0-9] +))$]
--method-rgx =
正しいメソッド名に一致する正規表現[現在:[a-z _] [a-z0-9 _] {2,30} $]
--method-name-hint =
メソッド名の命名のヒント[現在:[a-z _] [a-z0-9 _] {2,30} $]
--no-docstring-rgx =
一致しない関数名またはクラス名のみに一致する正規表現
docstringが必要です。 [現在: __。*__]
--docstring-min-length =
docstringを必要とする関数/クラスの最小行長、短いものは
免除。 [現在:-1]
雑則
--notes =
考慮すべきノートタグのリスト。コンマで区切ります。 [現在:
FIXME、XXX、TODO]
タイプチェック
--ignore-mixin-members =
ミックスインクラスでアクセスされた欠落しているメンバーを無視するかどうかを指示します。 ミックスイン
クラスの名前が「mixin」(大文字と小文字を区別しない)で終わる場合、クラスが検出されます。 [現在:はい]
--ignored-modules =
メンバー属性をチェックしてはならないモジュール名のリスト(
名前空間が実行時に操作され、したがって存在するモジュール/プロジェクト
静的解析ではメンバー属性を推定できません[現在:なし]
--ignored-classes =
メンバー属性をチェックしてはならないクラス名のリスト(
属性が動的に設定されたクラス)。 [現在:SQLObject]
--zope =
ゾープモードがアクティブになったら、事前定義されたゾープ取得属性のセットをに追加します。
生成されたメンバー。 [現在:いいえ]
--generated-members =
動的に設定され、pylint推論システムによって見逃されたメンバーのリスト、
したがって、アクセス時にE1101をトリガーしないでください。 Pythonの正規表現は
受け入れられました。 [現在:REQUEST、acl_users、aq_parent]
つづり
--spelling-dict =
スペル辞書名。 利用可能な辞書:なし。 それを機能させるにはインストール
python-enchantパッケージ。 [現在:なし]
--spelling-ignore-words =
チェックすべきではないコンマ区切りの単語のリスト。 [現在:なし]
--spelling-private-dict-file =
プライベート辞書を含むファイルへのパス。 XNUMX行にXNUMX語。 [現在:
なし]
--spelling-store-unknown-words =
--spelling-の指定されたプライベート辞書に不明な単語を保存するかどうかを指示します
メッセージを生成する代わりにprivate-dict-fileオプション。 [現在:いいえ]
FORMAT
--max-line-length =
100行の最大文字数。 [現在:XNUMX]
--ignore-long-lines =
制限より長くすることが許可されている行の正規表現。 [現在:^(#
)? ?$]
--single-line-if-stmt =
ifの本体が、他にない場合はテストと同じ行にあるようにします。
[現在:いいえ]
--no-space-check = NO_SPACE_CHECK
空白のチェックが無効になっているオプションの構成のリスト[現在:
末尾のコンマ、dict-separator]
--max-module-lines =
モジュールの最大行数[現在:1000]
--indent-string =
インデント単位として使用される文字列。 これは通常、 ""(4スペース)または ""(1タブ)です。
[現在: ' ']
--indent-after-paren =
ぶら下がっている線または連続している線の内側に必要なインデントのスペースの数。 [現在:
4]
--expected-line-ending-format =
行末の予想される形式。たとえば、空(任意の行末)、LFまたはCRLF。 [現在:
なし]
輸入
-非推奨-modules =
使用してはならない非推奨のモジュール。コンマで区切ってください[現在:
regsub、TERMIOS、Bastion、rexec]
--import-graph =
指定されたファイル内のすべての(つまり、内部および外部の)依存関係のグラフを作成します
(レポートRP0402を無効にしないでください)[現在:なし]
--ext-import-graph =
指定されたファイルに外部依存関係のグラフを作成します(レポートRP0402はすべきではありません)
無効にする)[現在:なし]
--int-import-graph =
指定されたファイルに内部依存関係のグラフを作成します(レポートRP0402はすべきではありません)
無効にする)[現在:なし]
類似性
--min-similarity-lines =
類似性の最小行数。 [現在:4]
--ignore-comments =
類似性を計算するときはコメントを無視してください。 [現在:はい]
--ignore-docstrings =
類似性を計算するときは、docstringを無視します。 [現在:はい]
--ignore-imports =
類似性を計算するときにインポートを無視します。 [現在:いいえ]
ENVIRONMENT 変数
次の環境変数が使用されます。
*パイリントーム
実行の永続が保存されるディレクトリへのパス。 見つからない場合は、
デフォルトは 〜/ .pylint.d / または.pylint.d(現在の作業ディレクトリ内)。
*PYLINTRC
構成ファイルへのパス。 検索に使用される方法については、ドキュメントを参照してください
構成ファイル用。
出力
デフォルトのテキスト出力を使用すると、メッセージ形式は次のようになります。
MESSAGE_TYPE:LINE_NUM:[OBJECT:] MESSAGE
メッセージの種類は5種類あります。
*(C)規則、プログラミング標準違反の場合
*(R)リファクタリング、コードの臭いが悪い場合
*(W)警告、Python固有の問題の場合
*(E)エラー、コード内のバグの可能性
*(F)致命的、エラーが発生してpylintがそれ以上実行できなくなった場合
処理。
出力 ステータス CODE
Pylintは、次のステータスコードを残しておく必要があります。
*すべてがうまくいった場合は0
*致命的なメッセージが発行された場合は1
*エラーメッセージが発行された場合は2
*警告メッセージが発行された場合は4
*リファクタリングメッセージが発行された場合は8
*コンベンションメッセージが発行された場合は16
*使用エラーで32
ステータス1から16はビットORされるため、どの異なるカテゴリが発行されたかを知ることができます
pylint出力ステータスコードを分析することによって
onworks.netサービスを使用してオンラインでpylint3を使用する