python – 为什么列表中允许使用尾随逗号?
作者:互联网
我很好奇为什么在Python中列表中的尾随逗号是有效的语法,而且似乎Python只是忽略它:
>>> ['a','b',]
['a', 'b']
它的一个元组是有意义的,因为(‘a’)和(‘a’,)是两个不同的东西,但在列表中?
解决方法:
主要优点是它使多行列表更容易编辑,并减少差异的混乱.
更改:
s = ['manny',
'mo',
'jack',
]
至:
s = ['manny',
'mo',
'jack',
'roger',
]
差异只涉及差异的一行变化:
s = ['manny',
'mo',
'jack',
+ 'roger',
]
当省略尾随逗号时,这打败了更令人困惑的多行差异:
s = ['manny',
'mo',
- 'jack'
+ 'jack',
+ 'roger'
]
后一种差异使得更难以看到只添加了一行而另一行没有改变内容.
它还降低了这样做的风险:
s = ['manny',
'mo',
'jack'
'roger' # Added this line, but forgot to add a comma on the previous line
]
并触发implicit string literal concatenation,产生s = [‘manny’,’mo’,’jackroger’]而不是预期的结果.
标签:comma,python,list,syntax,trailing 来源: https://codeday.me/bug/20190916/1807677.html