Python 列表方法 append 和 extend 之間有什麼區別
本文介紹了 Python 中列表 append
和 extend
之間的區別。
Python 列表 append
方法
append
將物件新增到列表的末尾。該物件可以是 Python 中的任何資料型別,例如列表、字典或類物件。
>>> A = [1, 2]
>>> A.append(3)
>>> A
[1, 2, 3]
>>> A.append([4, 5])
>>> A
[1, 2, 3, [4, 5]]
append
完成後,列表的長度將加一。
Python 列表 extend
方法
extend
通過新增來自可迭代物件的元素來擴充套件列表。它遍歷給定的可迭代物件,然後將每個元素新增到列表中。extend
方法給定的引數必須是可迭代的型別,例如列表,否則它將引發 TypeError
。
>>> A = [1, 2]
>>> A.extend(3)
Traceback (most recent call last):
File "<pyshell#9>", line 1, in <module>
A.extend(3)
TypeError: 'int' object is not iterable
如果要新增 3
到列表的末尾,則應首先將 3
放入到一個列表中。
>>> A = [1, 2]
>>> A.extend([3])
>>> A
[1, 2, 3]
extend
方法迭代可迭代物件中的元素,然後將它們一一新增到列表的末尾。
>>> A = [1, 2]
>>> A.extend([3, 4])
>>> A
[1, 2, 3, 4]
Python extend
字串型別
請注意,當給定物件是字串 str
型別時,它將把字串中的每個字元附加到列表中。
>>> A = ["a", "b"]
>>> A.extend("cde")
>>> A
['a', 'b', 'c', 'd', 'e']
Python 列表中 append
和 extend
之間區別的結論
append
將給定物件新增到列表的末尾,因此列表的長度僅增加 1。
另一方面,extend
將給定物件中的所有元素新增到列表的末尾,因此列表的長度增加了給定物件的長度。
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn