我使用的是使用pyflakes的SublimePythonIDE。 有一些,我想它忽略像错误:如何让pyflakes忽略一些错误?
(E501) line too long
(E101) indentation contains mixed spaces and tabs
什么最简单的方法来做到这一点?
我使用的是使用pyflakes的SublimePythonIDE。 有一些,我想它忽略像错误:如何让pyflakes忽略一些错误?
(E501) line too long
(E101) indentation contains mixed spaces and tabs
什么最简单的方法来做到这一点?
配置在崇高插件几乎总是使用相同的方法重复:请点击Preferences -> Package Settings -> Plugin Name -> Settings-Default
打开(意外惊喜)默认设置。该文件通常包含插件的所有可能设置,通常包含解释每个插件的注释。此文件无法修改,因此要自定义您打开的任何设置Preferences -> Package Settings -> Plugin Name -> Settings-User
。我通常将默认设置的全部内容复制到用户文件中,然后根据需要自定义,然后保存并关闭。
在这个特殊的插件的情况下,虽然它使用pyflakes
(如广告),这也使得使用pep8
,一种风格检查,使得使用非常相同的PEP-8官方的Python风格指南我在评论中提到的。这个知识是有用的,因为pyflakes
不使用特定的错误代码,而pep8
。
因此,通过检查插件的设置文件,我们找到一个"pep8_ignore"
选项以及一个"pyflakes_ignore"
。由于error codes从pep8
到来,我们将使用该设置:
"pep8_ignore": [ "E501", // line too long
"E303", // too many blank lines (3)
"E402" // module level import not at top of file
]
请注意,代码E121,E123,E126,E133,E226,E241,E242,E704和在默认情况下忽略,因为它们不规则一致接受,PEP 8不执行。
关于排长:
有时候,排长队是不可避免的。 79个字符的PEP-8的recommendation基于古老的历史,终端监视器只有80个字符的屏幕,但由于以下几个原因,它延续至今:与旧代码向后兼容,某些设备仍在使用中这些限制看起来不错,它使得在更宽的显示器上更容易并排打开多个文件,并且它是可读的(在编码时应始终牢记在心)。如果您希望拥有90或100个字符的限制,那么没有问题(如果您的团队/项目同意),但始终如此使用它,并且要注意其他人可能会使用不同的值。如果您想将pep8
设置为比其默认值80更大的值,请修改"pep8_max_line_length"
设置。
有许多方法可以减少行的字符数保持在限制范围内,或将长行分成多个较短的行。在您的例子在意见的情况:
flag, message = FacebookUserController.AddFBUserToDB(iOSUserId, fburl, fbsecret, code)
你可以做两件事情:
# shorten the module/class name
fbuc = FacebookUserController
# or
import FacebookUserController as fbuc
flag, message = fbuc.AddFBUserToDB(iOSUserId, fburl, fbsecret, code)
# or eliminate it all together
from FacebookUserController import AddFBUserToDB
flag, message = AddFBUserToDB(iOSUserId, fburl, fbsecret, code)
# split the function's arguments onto separate lines
flag, message = FacebookUserController.AddFBUserToDB(iOSUserId,
fburl,
fbsecret,
code)
# There are multiple ways of doing this, just make sure the subsequent
# line(s) are indented. You don't need to escape newlines inside of
# braces, brackets, and parentheses, but you do need to outside of them.
正如其他人所建议的,可能注意警告。但在这些情况下,您不能将# NOQA
添加到最终的违规行中。请注意0之前的两个空格,因为这也是一种将被投诉的风格。
如果pyflakes包裹在flake8中,允许忽略特定的错误。
例如在项目投产或添加到tox.ini
文件:
[flake8]
exclude = .tox,./build
filename = *.py
ignore = E501,E101
最简单的方法是避免这些错误。 – ZdaR
@ZdaR我喜欢很长的一行 – user3571278
不要**忽略'E101',因为在尝试运行代码时几乎肯定会遇到错误。 [PEP-8](https://www.python.org/dev/peps/pep-0008/#indentation)强烈建议使用4个空格。 – MattDMo