В этом руководстве по Python я расскажу о разнице между методами append() и extend() списка Python как в табличной, так и в индивидуальной форме.
Я также объясню, что такое функция Append(), с примерами и что такое функция Extend() в списке Python.
Основа сравнения | append() | extend() |
Синтаксис | list_name.append (элемент) | list_name.extend (повторяемый) |
Вход | Принимает только один входной элемент. | Принимает ввод как итерируемый, например список или кортеж. |
Функциональность | Добавляет один элемент в конец существующего списка. | Добавляет несколько элементов в список как отдельные элементы в конце списка. |
Операция | Добавляет полный ввод в список как один элемент. | Добавляет каждый элемент в список отдельно после прохода по каждому элементу во входных данных. |
Эффективность | Обычно это быстрее и эффективнее, чем метод Extend(), поскольку метод Append() выполняет только одну операцию за раз. | При добавлении элементов из разных итераций или при больших входных данных метод Extend() может занять больше времени. |
Временная сложность | Имеет постоянную временную сложность, 0(1). | Имеет временную сложность 0(K). Где k — длина списка, который необходимо добавить. |
Теперь давайте перейдем к реальным методам один за другим и разберемся в них глубже.
Что такое метод Append()
В Python метод Append() — это предопределенный метод в списке, используемый для добавления одного элемента в конец существующего списка. Его можно вызвать, используя точечную запись.
Позвольте мне прояснить это, показав примеры использования метода Append() в Python. Вы можете увидеть результат на скриншоте ниже.
Теперь я покажу вам, как добавить несколько значений в существующий список с помощью метода Append() в списке Python.
Чтобы сохранить значение, которое мы хотим добавить, в отдельном списке, мы можем использовать цикл for для вызова метода Append() в списке в Python столько раз, сколько необходимо.
Обратитесь к изображению ниже, чтобы увидеть результат:
Что такое метод extend()
Метод extend() — это встроенный метод в списке Python, используемый для добавления каждого элемента в список отдельно после прохода по каждому элементу во входных данных. Он будет вызываться с использованием точечной записи.
Чтобы вы поняли, я покажу вам пример использования метода extend() в Python. Ссылается на снимок экрана ниже, он дает результат:
Какой из методов быстрее?
Мы выясним, какой метод быстрее расширяется или добавляется, используя функцию timeit из модуля timeit в Python.
Timeit — встроенная библиотека Python. Этот модуль предоставляет простой способ узнать время выполнения программы Python.
Например: я выполнил программу Python, используя метод добавления и расширения с одним значением.
import timeit def single_append(x, y): x.append(y) temperature = [23, 21, 20, 25] print(timeit.timeit('single_append(temperature, 32)', setup='from __main__ import single_append,temperature')) def single_extend(x, y): x.extend(y) temp = [23, 21, 20, 25] more_temp = [34] print(timeit.timeit('single_extend(temp, more_temp)', setup='from __main__ import single_extend,temp,more_temp'))
Вывод: из кода Python ниже вы можете видеть, что добавление одного значения занимает меньше времени, чем расширение одного значения в Python.
0.08402279997244477 // Run time of single append value 0.10593359998892993 // Run time of single extend value
Теперь я проверю, что быстрее: добавить несколько значений или расширить несколько значений в списке Python.
Код:
import timeit def multiple_append(x, y): for i in y: x.append(i) temp = [23, 21, 20, 25] more_temp = [23, 33, 43] print(timeit.timeit('multiple_append(temp, more_temp)', setup='from __main__ import multiple_append,temp,more_temp')) def multiple_extend(x, y): x.extend(y) temp = [23, 21, 20, 25] more_temp = [23, 33, 43] print(timeit.timeit('multiple_extend(temp, more_temp)', setup='from __main__ import multiple_extend,temp,more_temp'))
Вывод: здесь из кода Python вы можете видеть, что добавление нескольких значений занимает больше времени, чем расширение нескольких значений в Python.
0.14341480005532503 // Run time of append multiple value 0.09257480001542717 // Run time of extend multiple value
Заключение
Теперь вы можете работать с методами Append() и Extend(), поскольку я объяснил, что такое расширение и добавление в Python, с помощью некоторых примеров.