在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]
所以,这只是语言的语义问题还是其他原因?