use*_*278 8 python pyflakes sublimetext
我正在使用使用pyflakes的SublimePythonIDE.我希望忽略一些错误,例如:
(E501) line too long
Run Code Online (Sandbox Code Playgroud)
(E101) indentation contains mixed spaces and tabs
Run Code Online (Sandbox Code Playgroud)
最简单的方法是什么?
在Sublime中配置插件几乎总是使用相同的过程:单击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"
.由于错误代码来自pep8
,我们将使用该设置:
"pep8_ignore": [ "E501", // line too long
"E303", // too many blank lines (3)
"E402" // module level import not at top of file
]
Run Code Online (Sandbox Code Playgroud)
请注意,默认情况下会忽略代码E121,E123,E126,E133,E226,E241,E242和E704,因为它们不是一致接受的规则,并且PEP 8不会强制执行它们.
关于长线:
有时,长线是不可避免的.PEP-8 建议使用79个字符的线路是基于古代历史,当终端监视器只有80个字符宽的屏幕,但它持续到今天有几个原因:它与旧代码向后兼容,一些设备仍在使用这些限制,它看起来不错,它使得在更宽的显示器上更容易并排打开多个文件,并且它是可读的(在编码时应始终牢记这一点).如果您希望有90或100个字符的限制,那很好(如果您的团队/项目同意),但要始终如一地使用它,并注意其他人可能使用不同的值.如果您想设置pep8
一个大于默认值80的值,只需修改"pep8_max_line_length"
设置即可.
有许多方法可以减少线的字符数以保持在限制范围内,或者将长线分成多个较短的线.对于您在评论中的示例:
flag, message = FacebookUserController.AddFBUserToDB(iOSUserId, fburl, fbsecret, code)
Run Code Online (Sandbox Code Playgroud)
你可以做几件事:
# shorten the module/class name
fbuc = FacebookUserController
# or
import FacebookUserController as fbuc
flag, message = fbuc.AddFBUserToDB(iOSUserId, fburl, fbsecret, code)
Run Code Online (Sandbox Code Playgroud)
# or eliminate it all together
from FacebookUserController import AddFBUserToDB
flag, message = AddFBUserToDB(iOSUserId, fburl, fbsecret, code)
Run Code Online (Sandbox Code Playgroud)
# 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.
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6925 次 |
最近记录: |