Durante la ricerca in un progetto Python, ho trovato alcune righe commentate # noqa
.
import sys
sys.path.append(r'C:\dev')
import some_module # noqa
Cosa noqa
significa in Python? È specifico solo per Python?
Durante la ricerca in un progetto Python, ho trovato alcune righe commentate # noqa
.
import sys
sys.path.append(r'C:\dev')
import some_module # noqa
Cosa noqa
significa in Python? È specifico solo per Python?
Risposte:
L'aggiunta # noqa
a una riga indica che la linter (un programma che controlla automaticamente la qualità del codice) non dovrebbe controllare questa riga. Qualsiasi avviso generato dal codice verrà ignorato.
Quella linea potrebbe avere qualcosa che "sembra brutto" alla linter, ma lo sviluppatore capisce e intende che sia lì per qualche motivo.
Per ulteriori informazioni, consultare la documentazione di Flake8 per la selezione e l' ignoramento delle violazioni .
// jshint ignore:line
( jshint.com/docs )
# noqa
. O forma specifica specifica # noinspection PyUnresolvedReferences
per esempio.
# noqa F0001
?
# nopep8
può essere utilizzato anche un po 'più chiaro, imo.
Viene generalmente indicato nella programmazione Python per ignorare gli avvisi PEP8 .
In parole semplici, le linee che hanno #noqa alla fine verranno ignorate dai programmi di linter e non genereranno alcun avviso.
Sai cosa? Anche Guido van Rossum (il creatore di Python) ha posto prima questa domanda : D
Era "nopep8" ma quando Flake8 e Pep8 volevano un qualificatore comune @florentx ha suggerito "NoQA" come in "No Quality Assurance" (iirc) e si è bloccato.
Alcuni usi di base di# noqa
(con flake8 ):
# flake8: noqa
: i file che contengono questa riga vengono saltati# noqa
commento alla fine : non emetterà avvisi# noqa: <error>
, ad esempio, # noqa: E234
alla fine : ignora errori specifici su una riga
noqa
molto probabilmente rappresentano quality assurance
. Indica al software di analisi del codice di ignorare gli avvisi.