方式一:使用+ 将加号两边的列表进行拼接得到一个新的列表(重新分配的内存空间)
listA = [1, 2, 3] listB = [4, 5, 6, 7] print(listA, "addr:0x%x" % id(listA)) print(listB, "addr:0x%x" % id(listB)) listC = listA + listB # 拼接结果存放在重新分配内存空间中 print(listC, "addr:0x%x" % id(listC))
输出
[1, 2, 3] addr:0x1be35d25208 [4, 5, 6, 7] addr:0x1be35d25408 [1, 2, 3, 4, 5, 6, 7] addr:0x1be35e5a908
方式二:使用+=将+=右边的列表追加到左边的列表,原地址空间首地址保持不变
listA = [1, 2, 3] listB = [4, 5, 6, 7] print(listA, "addr:0x%x" % id(listA)) print(listB, "addr:0x%x" % id(listB)) listA += listB # 在原有listA的空间后追加listB的所有成员 print(listA, "addr:0x%x" % id(listA))
输出
[1, 2, 3] addr:0x1f24ab351c8 [4, 5, 6, 7] addr:0x1f24ab353c8 [1, 2, 3, 4, 5, 6, 7] addr:0x1f24ab351c8