PEP 8 E211问题提出来了。不知道为什么

时间:2016-08-22 05:34:06

标签: python

我的代码:

if 'certainField' in myData['meta']['loc']:
   something = myData['meta'] \            <- PEP8 E11 raised for this
   ['loc'] \                               <- PEP8 E11 raised for this
   ['certainField'] \                      <- PEP8 E11 raised for this
   ['thefield']

代码按预期工作。但PEP 8 E211是针对声称whitespace before '['

的第二,第三和第四行提出的

我不明白。如何格式化以满足PEP 8?

1 个答案:

答案 0 :(得分:2)

您可以将语句包装成括号并删除 \

if 'certainField' in myData['meta']['loc']:
    something = (myData['meta']
                 ['loc']
                 ['certainField']
                 ['thefield'])

<小时/> 以下是关于包裹长行的摘录形式PEP 8

  

包装长行的首选方法是在括号,括号和括号内使用Python隐含的行继续。通过在括号中包装表达式,可以在多行中分割长行。这些应该优先使用反斜杠进行续行。

     

反斜杠有时可能仍然合适。例如,很久,   多个-statements不能使用隐式延续,所以   反斜杠是可以接受的: