我试过
#:PEP8 -E223
或
# pep8: disable=E223
我认为第二种方法可行,但似乎不起作用。
你知道我该如何处理这个问题吗?
答案 0 :(得分:70)
据我所知,你不能。 您可以禁用用户范围或每个项目的错误或警告。请参阅the documentation。
相反,您可以使用行尾的# noqa
注释来跳过该特定行(请参阅patch 136)。当然,这会跳过所有PEP8错误。
主要作者反对source file noise,因此他们建议不要包含# pep8
条评论。
请注意,还有nopep8
,它是等效的。 noqa
(代表No Quality Assurance}已添加in version 1.4.1以支持人员running pyflakes
next to pep8
。
答案 1 :(得分:29)
尝试将# nopep8
放在行尾(两个空格后)。所以如果代码行是:
h=1+2+3+4+5+6+func( "hello","world")
然后忽略该行的大量pep8错误:
h=1+2+3+4+5+6+func( "hello","world") # nopep8
答案 2 :(得分:21)
您可以使用--ignore
标志来禁用上面提到的错误
pep8 --ignore=E223 file_name.py
多个错误
pep8 --ignore=E223,E501 file_name.py
有关其他标记的更深入了解,您可以浏览http://pep8.readthedocs.org/en/latest/intro.html
答案 3 :(得分:8)
让我添加一些可能在所有之前的答案发布后引入的内容。
如果您使用Flake8,则可以通过添加
来忽略特定行中引发的特定违规# noqa: F401
在该行的末尾,其中F401
这里是错误代码的示例。有关所有违规行为代码的列表,请参阅http://flake8.pycqa.org/en/3.5.0/user/error-codes.html和https://pycodestyle.readthedocs.io/en/latest/intro.html#error-codes
您还可以通过添加
来忽略整个文件中的所有违规行为# flake8: noqa
文件中的任何位置。
答案 4 :(得分:3)
你可以使用Flake8和https://github.com/jayvdb/flake8-putty
一起使用答案 5 :(得分:0)
如果使用Flake8 3.7.0+,则可以使用--per-file-ignores
选项忽略整个文件的特定警告。
命令行用法:
flake8 --per-file-ignores='project/__init__.py:F401,F403 setup.py:E121'
这也可以在config file中指定:
[flake8]
per-file-ignores =
__init__.py: F401,F403
setup.py: E121
other/*: W9
答案 6 :(得分:0)
例如,可以使用您的设置配置文件(setup.cfg
):
[tool:pytest]
pep8ignore =
*.py E501 W503
api.py E402 <=============== HERE
doc/* ALL
pep8maxlinelength = 120
flakes-ignore =
UnusedImport
filterwarnings =
ignore::DeprecationWarning
答案 7 :(得分:0)