python中两种类型的列表添加之间有什么区别?

时间:2018-12-31 06:17:12

标签: python-3.x

我以两种方式添加列表本身。在输出中,更新列表的存储位置有时与父列表匹配,有时不匹配。 我可以知道这个的解释吗?

在第一种情况下,我使用+运算符进行了检查,并将结果分配给列表引用。 但是在第二种情况下,我使用+ =运算符。

第一种情况:

  x=[1,2,3]
  print(x, id(x))
  x+=x
  print(x, id(x))

输出:

  [1, 2, 3] 88777032
  [1, 2, 3, 1, 2, 3] 88777032

第二种情况:

  y=[1,2,3]
  print(y, id(y))
  y=y+y
  print(y, id(y))

输出:

  [1, 2, 3] 88297352
  [1, 2, 3, 1, 2, 3] 88776904

1 个答案:

答案 0 :(得分:1)

第一种情况: x += x只是通过添加x来扩展现有的x

第二种情况: y = y+y通过将y两次连接(y和y)来创建新列表,然后将结果分配给新创建的对象y