Ao pesquisar em um projeto Python, encontrei algumas linhas comentadas # noqa
.
import sys
sys.path.append(r'C:\dev')
import some_module # noqa
O que noqa
significa em Python? É específico apenas para Python?
Ao pesquisar em um projeto Python, encontrei algumas linhas comentadas # noqa
.
import sys
sys.path.append(r'C:\dev')
import some_module # noqa
O que noqa
significa em Python? É específico apenas para Python?
Respostas:
Adicionar # noqa
uma linha indica que o linter (um programa que verifica automaticamente a qualidade do código) não deve verificar essa linha. Quaisquer avisos que esse código possa ter gerado serão ignorados.
Essa linha pode ter algo que "parece ruim" para o linter, mas o desenvolvedor entende e pretende que ele esteja lá por algum motivo.
Para obter mais informações, consulte a documentação do Flake8 para selecionar e ignorar violações .
// jshint ignore:line
( jshint.com/docs )
# noqa
. Ou formulário longo específico, # noinspection PyUnresolvedReferences
por exemplo.
# noqa F0001
?
# nopep8
também pode ser usado, o que é um pouco mais claro.
Geralmente é referido na Programação em Python para ignorar os avisos do PEP8 .
Em palavras simples, as linhas com #noqa no final serão ignoradas pelos programas linter e não emitirão nenhum aviso.
Você sabe o que? Até Guido van Rossum (o criador do Python) fez essa pergunta antes : D
Um pouco de etimologia de# noqa
:
Costumava ser "nopep8", mas quando Flake8 e Pep8 queriam um qualificador comum, a @florentx sugeria "NoQA" como em "No Quality Assurance" (iirc) e fica preso.
Alguns usos básicos de# noqa
(com flake8 ):
# flake8: noqa
: arquivos que contêm essa linha são ignorados# noqa
comentário no final : não emitirá avisos# noqa: <error>
, por exemplo, # noqa: E234
no final : ignore erros específicos em uma linha
noqa
provavelmente significano quality assurance
. Ele informa ao software de análise de código que ignore os avisos.