【发布时间】:2022-01-21 06:27:42
【问题描述】:
为什么这两个操作(append() resp. +)给出不同的结果?
>>> c = [1, 2, 3]
>>> c
[1, 2, 3]
>>> c += c
>>> c
[1, 2, 3, 1, 2, 3]
>>> c = [1, 2, 3]
>>> c.append(c)
>>> c
[1, 2, 3, [...]]
>>>
在最后一种情况下,实际上存在无限递归。 c[-1] 和 c 是一样的。为什么与+ 操作不同?
【问题讨论】:
-
非常尊重一个可行的新问题:我回滚到原始问题以保持其干净(每个线程 1 个问题,请参阅 SO FAQ)。请在每个答案下方的评论线程中提出新问题或提出后续问题。 注意:您的编辑不会丢失,点击历史记录,您可以将其复制/粘贴到新问题中。
-
它似乎给出了不同的ans,但不是那样的。如果要使用 + 运算符添加值,则必须使用 [] 符号。 c += [c] 会给你与 append 相同的结果。
-
@SharifChowdhury 我相信你会得到同样的结果
标签: python list append nested-lists