2017-07-27 26 views
6

在Python项目中搜索时,我发现有几行用# noqua注释。'#noqa'在Python注释中的含义是什么?

import sys 
sys.path.append(r'C:\dev') 
import some_module # noqa 

noqa是什么意思?它仅针对Python吗?

+1

**错误地关闭。**这是一个非常具体的问题,它很实用,它有一个非常具体的答案。搜索“python noqa”会引发_this closed question_ as#5。它应该是#1并且开放。 –

+0

'noqa'最有可能代表'没有质量保证'。它告诉代码分析软件忽略警告。 –

+0

相关:[我如何让Pyflakes忽略一个声明?](https://stackoverflow.com/q/5033727/3357935) –

回答

13

# noqa添加到一行表示linter(自动检查代码质量的程序)不应该检查此行。代码可能产生的任何警告都将被忽略。

该行可能会对linter“看起来不好”,但开发人员理解并打算出于某种原因在那里。请参阅Flake8 documentation for Selecting and Ignoring Violations

+0

是否仅仅是python的特定? – Ishpreet

+1

对于python linters来说,这是通常的说法,但对于其他linters可以不同,即javascript w/jshint是:'// jshint ignore:line'(http://jshint.com/docs/) – jimf

+1

它适用于PyCharm也是如此。短格式通用'#noqa'。或者,例如,特定于长形式的'#noinspection PyUnresolvedReferences'。 –

相关问题