在Python中使用+和+=运算符进行连接

13 浏览
0 Comments

在Python中使用+和+=运算符进行连接

最近,我注意到在连接列表时存在不一致性。

如果使用+运算符,它不会将列表与任何类型不同的对象连接起来。例如,

l = [1,2,3]
l = l + (4,5)        #TypeError: 只能将列表连接到列表(而不是"元组")

但是,如果使用+=运算符,它会忽略对象的类型。例如,

l = [1,2,3]
l += "he"            #这里,l变成了[1, 2, 3,"h", "e"]
l += (56, 67)        #这里,l变成了[1, 2, 3,"h", "e", 56, 67]

所以,这只是语言的语义问题还是其他原因?

0