26

pylintを使用していくつかのコードをPEP8標準に更新しています。コードの一部はW0612未使用変数エラーをスローしていますが、これは、たとえば、この特定のケースでxのみが必要な場合に、(x、y)を返すモジュールを使用しているためです。

(var_1, var_2) = func()

def func():
    a="a"
    b="b"
    return (a,b)

その後、var_1が返されますが、var_2は使用されないため、エラーがスローされます。これをどのように処理すればよいですか?私はこれを考えています

var = func()[0]

それを処理するための最良の方法は何ですか?

4

1 に答える 1

41

a, dummy = func()私はそれがトリックだと信じています。Pylintは、(正しく思い出せば)_またはdummyで始まる未使用の変数名を許可しますdummy_index

--dummy-variables-rgxこれは、オプションをPylintに渡すことで構成できます。これは、ダミー変数名をキャッチする正規表現を指定します。

Pylint 1.6.0のドキュメントから:

ダミー変数-rgx:

    ダミー変数の名前に一致する正規表現(つまり、使用されないことが予想されます)。デフォルト:(_ + [a-zA-Z0-9] *?$)|ダミー

:使用_すると、実際に混乱が生じる可能性があります(小道具:SvenMarnach)。セミプライベート識別子のプレフィックスとしてシングルアンダースコアを使用する規則があります。もちろん、ダブルアンダースコアは特別なPythonメソッドのプレフィックスであり、さらに、のようにローカリゼーションが必要なプログラムのようにgettext()関数をエイリアスする規則があります。_()_("text to translate")

于 2012-04-11T13:55:58.760 に答える