Python PEP8 E128:can';我不明白为什么要标记一行
我正在使用Sublime+,它有一个内置的PyLint功能 我不明白为什么在下面的块中出现Python PEP8 E128:can';我不明白为什么要标记一行,python,sublimetext3,sublime-text-plugin,pep8,Python,Sublimetext3,Sublime Text Plugin,Pep8,我正在使用Sublime+,它有一个内置的PyLint功能 我不明白为什么在下面的块中出现pars\u f\u name)行: else: # Get parameters file name from path. pars_f_name = pars_f_path.split('/')[-1] print (" WARNING: Unknown '{}' ID found
pars\u f\u name)
行:
else:
# Get parameters file name from path.
pars_f_name = pars_f_path.split('/')[-1]
print (" WARNING: Unknown '{}' ID found in line {}\n"
" of '{}' file.\n").format(reader[0], l + 1,
pars_f_name)
# Pack params in lists.
pl_params = [flag_make_plot, plot_frmt, plot_dpi]
正在标记为:
[W] PEP 8 (E128): continuation line under-indented for visual indent
我已经尝试了我能想到的每一个缩进(正如建议的那样),但巨蟒一直将这条线标记为PEP8 E128警告
我做错了什么?您需要进一步缩进
str.format()
参数:
print (" WARNING: Unknown '{}' ID found in line {}\n"
" of '{}' file.\n").format(reader[0], l + 1,
pars_f_name)
# ^^^^^^^^^^^^
作为个人选择,我将这些论点放在一行,缩进:
print (" WARNING: Unknown '{}' ID found in line {}\n"
" of '{}' file.\n").format(
reader[0], l + 1, pars_f_name)
这被称为一个
见政治公众人物第8章的第2节;这些注意事项递归地应用于每个嵌套调用表达式。替换:
print (" WARNING: Unknown '{}' ID found in line {}\n"
" of '{}' file.\n").format(reader[0], l + 1,
pars_f_name)
与:
它基本上是在抱怨str.format()
部分缺少缩进;但是,按照上面的示例格式化代码会使代码更具可读性
更新:这在PEP8中被称为“悬挂缩进”(参见:@MartijnPieters的回复)。这个回复更多的是“如何修复它,同时使它可读”。(不幸的是,在这一点上有许多相互竞争的主观观点!)我仍然会把父母排成一行;但是哦,好吧!个人选择和所有:)@JamesMills:我对整个
str.format()
操作都使用括号表示赞同,但我倾向于将结束括号放在同一行。:-)谢谢你,玛蒂恩!这让我抓狂,我没有注意到我还必须缩进format()
参数。@MartijnPieters是的,很公平:)这真的很主观!我还是+1:)不知道为什么这个答案被否决了。我更喜欢Martijn的格式,但需要+1来提供解释。谢谢大家!@加布里埃尔,我也不确定;这两种方法都非常有效,但有不同的方法来解决PEP8法规遵从性的相同“挂起缩进”问题。
print(
" WARNING: Unknown '{}' ID found in line {}\n"
" of '{}' file.\n".format(
reader[0], l + 1, pars_f_name
)
)