2017-01-17 6 views
3

私はpylintを実行するPythonコードをいくつか持っており、pycodestyleを実行することにしました。インデントスタイルについてのpylintとpycodestyleの競合を避ける方法

声明とで長い行を避けるために、私は次のようにします。

with my_context_manager(
    argument1, 
    argument2) as something: 
    rest_of_my_code 

しかし、次のように

E125 continuation line with same indent as next logical line 

は、だから私は、これをさらにインデントと私にpycodestyle告げる:

with my_context_manager(
     argument1, 
     argument2) as something: 
    rest_of_my_code 

しかし、今はpylintと表示されます。

Wrong hanging indentation (remove 4 spaces). 

両方のコード品質チェッカーを満たす優れたソリューションはありますか?


注1

以下は、2つのスタイルチェッカーのいずれかから苦情を発生させない(残念ながら常にそうではありません)行が長すぎないことを条件とする。

with my_context_manager(argument1, 
         argument2) as something: 
    rest_of_my_code 

注2

コメントに答えるために、次

with my_context_manager(
    argument1, 
    argument2) as something: 
     rest_of_my_code 

不思議pycodestyleはまだ以前(argument2と1)と同じラインについてE125 continuation line with same indent as next logical lineを言います。

+3

好奇心を持たずに、 'rest_of_my_code'を別の方法でインデントすると(つまり、' argument1'と 'argument2'より先に)どうなりますか? – Tagc

答えて

1

あなたは(.pylintrcは、ファイルのMESSAGE CONTROLセクションでdisableオプションにbad-continuationを追加で)pylintでのチェックを無効にすることができます。

〜/ .pylintrc

[MESSAGES CONTROL] 
disable=bad-continuation,... 

よりおよそmessage-control設定

0

私はコード次のようにフォーマットされたためのFAQを参照してください...

with my_context_manager(
    argument1, 
    argument2 
) as something: 
    rest_of_my_code 

...としませんでしたpylintとpycodestyleから何か苦情を受ける。

関連する問題