如何禁用特定文件中的pep8错误?

问题描述 投票:56回答:6

我试过了

#:PEP8 -E223

要么

# pep8: disable=E223

我认为第二个会起作用,但似乎不起作用。

你知道我怎么能处理这个吗?

python pep8
6个回答
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


29
投票

尝试将# nopep8放在行尾(两个空格后)。所以,如果代码行是:

h=1+2+3+4+5+6+func( "hello","world")

然后忽略该行的大量pep8错误:

h=1+2+3+4+5+6+func( "hello","world")  # nopep8

22
投票

您可以使用--ignore标志来禁用上面提到的错误

pep8 --ignore=E223 file_name.py

多个错误

pep8 --ignore=E223,E501 file_name.py

有关其他旗帜的更深入了解,您可以通过http://pep8.readthedocs.org/en/latest/intro.html进行扫描


9
投票

让我添加一些可能在发布所有先前答案后引入的内容。

如果使用Flake8,则可以通过添加忽略特定行中引发的特定违规

# noqa: F401

在该行的末尾,这里F401是一个错误代码的示例。有关所有违规代码的列表,请参阅http://flake8.pycqa.org/en/3.5.0/user/error-codes.htmlhttps://pycodestyle.readthedocs.io/en/latest/intro.html#error-codes

您还可以通过添加忽略整个文件中的所有违规

# flake8: noqa

文件中的任何位置。

参考:http://flake8.pycqa.org/en/3.5.0/user/violations.html


3
投票

您可以使用Flake8和https://github.com/jayvdb/flake8-putty一起使用


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
© www.soinside.com 2019 - 2024. All rights reserved.