real - ¿Qué significa ''# noqa'' en los comentarios de Python?
how to document python code (3)
noqa = NO-QA (SIN garantía de calidad)
En general, en Python Programming se hace caso omiso de las advertencias PEP8 .
En palabras simples, las líneas que tienen #noqa al final serán ignoradas por los programas linter y no generarán ninguna advertencia.
Mientras buscaba en un proyecto de Python, encontré algunas líneas comentadas con
# noqa
.
import sys
sys.path.append(r''C:/dev'')
import some_module # noqa
¿Qué significa
noqa
en Python?
¿Es específico solo para Python?
¿Sabes que? Incluso Guido van Rossum (el creador de Python) hizo esta pregunta antes : D
Un poco de
Etimología
de
# noqa
:
Solía ser "nopep8", pero cuando Flake8 y Pep8 querían un calificador común @florentx sugirió "NoQA" como en "No Quality Assurance" (iirc) y se quedó.
Algunos
usos
básicos de
# noqa
(con
flake8
):
-
# flake8: noqa
archivos que contienen esta línea -
líneas
que contienen un comentario
# noqa
al final : no emitirá advertencias -
# noqa: <error>
, por ejemplo,# noqa: E234
al final : ignorar errores específicos en una línea- se pueden dar múltiples códigos de error, separados por comas
- los dos puntos antes de que se requiera la lista de códigos
Agregar
# noqa
a una línea indica que el linter (un programa que verifica automáticamente la calidad del código) no debe verificar esta línea.
Cualquier advertencia que haya generado el código será ignorada.
Esa línea puede tener algo que "se ve mal" para la interfaz, pero el desarrollador entiende y tiene la intención de que esté allí por alguna razón.
Para obtener más información, consulte la documentación de Flake8 para Seleccionar e ignorar infracciones .