理解清單上的Python Append() 和= 運算子之間的差異
append() 方法和= 運算子在操作時表現不同清單。 append() 將給定元素新增至清單末尾,而 = 將運算元清單的元素連接到現有清單。
使用 =
的後果將 = 與列表一起用作操作數會產生一個將原始列表與操作數列表的元素組合在一起的新列表。例如:
<code class="python">c = [1, 2, 3] c += c print(c) # [1, 2, 3, 1, 2, 3]</code>
使用append()進行遞歸
相反,append()將清單本身作為單一元素追加,這會導致無限遞歸,如果該列表將添加到其自身中。發生這種情況是因為透過 c[-1] 存取的列表的最後一個元素現在引用列表本身,從而創建遞歸循環。
<code class="python">c = [1, 2, 3] c.append(c) print(c) # [1, 2, 3, [...]] # infinite recursion</code>
替代選項:extend()
要將一個列表的元素追加到另一個列表,請使用extend() 方法。它就地修改原始列表,與建立新列表的 = 不同:
<code class="python">c = [1, 2, 3] c.extend(c) print(c) # [1, 2, 3, 1, 2, 3]</code>
以上是Python 的 `append()` 和 `=` 運算子在列表上使用時有何不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!