Das say
-Modul führt die Zeichenfolgeninterpolation in Python wie folgt ein:
import say
def f(a):
return say.fmt("The value of 'a' is {a}")
PyLint beschwert sich jedoch darüber, dass die Variable 'a' niemals verwendet wird. Dies ist ein Problem, da mein Code say.fmt
ausführlich verwendet. Wie kann ich diese Warnung zum Schweigen bringen?
Ja, Sie können Pylint-Warnungen ausschalten.
Hier ist ein Weg:
import say
def f(a):
#pylint: disable=unused-argument
return say.fmt("The value of 'a' is {a}")
Alternativ können Sie eine Konfigurationsdatei erstellen und diese Zeilen hinzufügen:
[MESSAGES CONTROL]
disable=unused-argument
Referenz:
Ein Ansatz zum Stummschalten dieser Nachricht besteht darin, das Argument mit dummy
oder _
zu benennen oder voranzustellen, wie in
import say
def f(_a):
return say.fmt("The value of 'a' is {_a}")
Weitere Informationen finden Sie hier: https://stackoverflow.com/a/10107410/1080804
Es gibt jetzt disable-possibly-unused-variable
(seit pylint 2.0 wurde am 15.08.1880 veröffentlicht), das man in Dateien ignorieren könnte, die Ihr say
-Modul importieren:
Neue möglicherweise-unused-variable Prüfung hinzugefügt.
Dies ist ähnlich wie bei einer unbenutzten Variable. Der einzige Unterschied besteht darin, dass sie ausgegeben wird, wenn ein locals () - Aufruf im Gültigkeitsbereich der unbenutzten Variablen erkannt wird. Der locals () - Aufruf könnte möglicherweise die genannte Variable verwenden, indem er alle Werte verbraucht, die bis zum Anrufpunkt vorhanden sind. Diese neue Prüfung ermöglicht das Deaktivieren dieses Fehlers, wenn der Benutzer Locals () absichtlich verwendet, um alles zu verbrauchen.
Beispielsweise löst der folgende Code jetzt diesen neuen Fehler aus:
def func(): some_value = some_call() return locals()
Der Grund für diese Überprüfung schließt explizit Ihren Anwendungsfall ein , obwohl darauf hingewiesen wird, dass dies keine perfekte Lösung ist:
Es wäre großartig, eine separate Überprüfung auf nicht verwendete Variablen durchzuführen, wenn locals () im selben Bereich verwendet wird:
def example_no_locals(): value = 42 # pylint: disable=unused-variable def exmaple_defined_before(): value = 42 # pylint: disable=possibly-unused-variable print(locals()) def exmaple_defined_after(): print(locals()) value = 42 # pylint: disable=unused-variable
Der Vorteil davon ist, dass man die wahrscheinlich-unused-variable für eine Datei (die viele String-Formatierungen enthält oder das Konfigurationscode-Beispiel in # 641 enthält) oder das gesamte Projekt deaktivieren kann, ohne die Überprüfungen für nicht verwendete-Variablen zu verlieren.