2012-04-11 8 views
13

Zaktualizuję kod do standardu PEP 8 za pomocą pylint. Część kodu wyrzuca nieużywany błąd zmiennej W0612, ale dzieje się tak dlatego, że używa on modułu, który zwraca (x, y) na przykład, gdy w tym konkretnym przypadku potrzebne jest tylko x, tak właśnie się stało.Jak radzić sobie z wiadomością pylint: ID: W0612 Niewykorzystana zmienna

(var_1, var_2) = func() 

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

Zwraca się wtedy zmienna var_1, ale zmienna var_2 nigdy nie jest używana i dlatego generuje błąd. Jak mam sobie z tym poradzić? Myślę, że to jest najlepszy sposób na obsłużenie go?

Odpowiedz

23

Wierzę, że a, dummy = func() załatwia sprawę. Pylint pozwala (jeśli dobrze pamiętam) nieużywane nazwy zmiennych rozpoczynające się od _ lub dummy, np. dummy_index.

Można to skonfigurować, przekazując opcję --dummy-variables-rgx do Pylint. Określa wyrażenie regularne, które przechwytuje fałszywe nazwy zmiennych.

Uwaga: Korzystanie z _ może rzeczywiście powodować zamieszanie (rekwizyty: Sven Marnach). Istnieje konwencja, w której można używać pojedynczego podkreślenia jako przedrostka dla identyfikatorów półprywatnych, podwójny podkreślnik jest oczywiście prefiksem dla specjalnych metod Pythona, a ponadto istnieje konwencja określająca funkcję gettext() jako _() w programach wymagających lokalizacji jak w _("text to translate").

+1

Tak, to idealne 'unused_index' nie działało,' _unused_index' i '_index' zrobił jednak. dzięki za pomoc. – Jacxel

+1

Polecam używać 'manekina' zamiast zwykłego' _' jako nazwy zmiennej. Ta ostatnia zwykle powoduje niepotrzebne zamieszanie. –

+0

@Jacxel Myliłem się przed prefiksem 'nieużywany'. Właśnie tego używaliśmy w kodzie źródłowym, nad którym pracowałem. Domyślnie Pylint to 'dummy' lub' _'. –