В чем разница между списочными методами добавлять и расширять
-
Метод
append
к списку Python -
Метод Python List
extend
-
Заключение разницы между
append
иextend
в Python List
Эта статья представляет разницу между методами append
и extend
на Python.
Метод append
к списку Python
append
добавляет объект в конец списка. Объектом может быть любой тип данных на Python, например, список, словарь или объект класса.
>>> A = [1, 2]
>>> A.append(3)
>>> A
[1, 2, 3]
>>> A.append([4, 5])
>>> A
[1, 2, 3, [4, 5]]
Длина списка увеличится на единицу после того, как будет сделано append
.
Метод Python List 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
Имейте в виду, что когда данный объект является типом string
, он будет добавлять каждый символ в строке к списку.
>>> A = ["a", "b"]
>>> A.extend("cde")
>>> A
['a', 'b', 'c', 'd', 'e']
Заключение разницы между append
и extend
в Python List
append
добавляет данный объект в конец списка, поэтому длина списка увеличивается только на 1.
С другой стороны, extend
добавляет все элементы данного объекта в конец списка, поэтому длина списка увеличивается на длину данного объекта.