开发者社区> 问答> 正文

为什么“a = a + a”不是循环结构,而“a.append(a)”是一个循环结构

a = [1,2,3]
a = a + [a]
Print(a)

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

a = [1,2,3]
a.append[a]
Print (a)

[1,2,3,[...]]

展开
收起
一码平川MACHEL 2019-01-23 13:48:12 3307 0
1 条回答
写回答
取消 提交回答
  • 因为+创建一个新对象,append只是附加到原始对象。如果你将一个列表附加到自己有一个循环。

    a = [12]
    id(a)
    4337923136
    a = a + [a]
    id(a)

    4338091360

    a

    [12, [12]]

    a.append(a)
    id(a)

    4338091360

    a

    [12, [12], [...]]

    2019-07-17 23:26:36
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载