关于python:在列表中添加元组元素

Adding a tuple element in a list

本问题已经有最佳答案,请猛点这里访问。

insert方法有助于在预期输出lst = [((1,2), (3, 4))]lst中添加元素((1,2), (3, 4))

1
2
3
lst = []
lst.insert(0, ((1,2), (3, 4)))
lst.insert(1, ((5, 6), (7, 8)))

+=运算符给出的结果不同(lst = [(1, 2), (3, 4)])。

1
2
lst = []
lst += ((1,2), (3, 4))

+=运算符内部调用__iadd__方法。

为什么__iadd__不按class <'list'>insert(index,element)方法添加元素?因为在合并排序代码中维护索引需要额外的名称-值对,这是一个很大的开销。


x += y,其中xy为列表形式,将创建一个新的列表,其中y的内容与x的内容相连接。

由于您不想将tuple ((1,2), (3, 4))的内容附加到lst中,而是希望将tuple添加到列表中,因此您应该将lst.append(((1,2), (3, 4)))添加到列表中。

1
2
3
4
5
>>> lst = []
>>> lst.append(((1, 2), (3, 4)))
>>> lst.append(((5, 6), (7, 8)))
>>> lst
[((1, 2), (3, 4)), ((5, 6), (7, 8))]