Функции append() и extend() в Python: как добавить элементы в список
Знание функций языка упрощает процесс работы над кодом. Мы решили рассказать о методах append() и extend() в Python, которые помогают добавлять новые элементы в готовый список или объединить несколько объектов. Вы узнаете, что делает append в Python, зачем нужен метод extend и в чём разница этих функций. Подробнее об этом также рассказывают на курсе «Бекенд-разработчик на Python» от SF Education.
Объединение списков при помощи оператора +
Перед тем, как разобрать работу методов append и extend, рассмотрим, как происходит объединение двух списков с помощью оператора +. Допустим, у вас есть два списка — list и list23, которые нужно соединить в один. При их объединении элементы одного списка не будут добавляться к элементам другого. Вы получите новый список, состоящий из содержимого list и list23, а изначальные данные остаются в сохранённом виде.
Методы списков append() и extend() нужно использовать в том случае, когда необходимо расширить уже существующий список, а не создавать новый. Теперь подробнее о том, как это сделать.
Метод append в Python
Функция или метод append() в Питоне относится к методам списка, которых всего 11. Он помогает добавлять объект в конец списка. Как и другие методы, вызвать append можно через оператор *точка*. Особенность элемента в том, что с помощью него можно принять только один аргумент item и добавить его в конец списка. Параметр бывает разным — строка, число или словарь (dict, dictionary).
Использование метода append() в Python
В качестве примера рассмотрим список *d*, в который нужно добавить строку.
Изначально он выглядит так:
d = [‘flow’, ‘low’, ‘lot’]
Чтобы добавить ещё одну строку ‘sun’, нужно передать её в качестве аргумента append(). Как мы писали выше, вызывать его можно через оператор *точка*. Выглядит это так:
d.append(‘sun’)
print(d)
[‘flow’, ‘low, ‘lot’, ‘sun’]
Строка ‘sun’ появилась в конце списка: значит всё сделано верно. Но что будет, если добавить ещё один список, в котором три строки?
b = [‘cat’, ‘pain’]
d.append(b)
print(d)
[‘flow’, ‘low, ‘lot’, ‘sun’ [‘cat’, ‘pain’]]
Вы видите, что в списке d новый список b присоединился в качестве вложения. Добавить элементы отдельно при помощи append не получится — метод принимает только один аргумент. Этим он и отличается от extend, речь о котором пойдёт ниже. Дело в том, что extend помогает включить данные сразу нескольких элементов.
Новичкам в веб-разработке рекомендуем бесплатный курс «Веб-разработчик: с нуля до первого проекта». Вы узнаете, как устроена frontend-разработка, создадите свой первый сайт и выложите его на GitHub, как разработчик.
Метод extend в Питоне
Extend также добавляет элементы в конец списка, но в этом случае вам нужно ввести итерируемую последовательность (кортеж, список, строка и другое), где каждый элемент потом станет отдельной частью списка. Плюсом вы можете сочетать несколько различных видов элементов, например, объединить строки со списками.
Вернёмся к предыдущему примеру и списку:
d = [‘flow’, ‘low’, ‘lot’].
Нам необходимо соединить его с последовательностью b = [‘rain’, ‘man’]. Вот как это будет выглядеть:
b = [‘rain’, ‘man’].
d.extend(b)
print(d)
[‘flow’, ‘low’, ‘lot’, ‘rain’, ‘man’]
Каждый из элементов b по отдельности добавился к d. Вы также можете добавить и другие итерируемые объекты — кортежи, строки.
f = (‘more’, ‘feel’)
d.extend(f)
print(d)
[‘flow’, ‘low’, ‘lot’, ‘rain’, ‘man’,’more’, ‘feel’]
g= ‘love’
d.extend(g)
print(d)
[‘flow’, ‘low’, ‘lot’, ‘rain’, ‘man’,’more’, ‘feel’, ‘l’, ‘o’, ‘v’, ‘e’]
Обратите внимание, что строки в extend() становятся списками символов и добавляются посимвольно — ‘love’ превратилось в ‘l’, ‘o’, ‘v’, ‘e’. Важно, что передать в extend не итерируемый объект, например, число не получится. Python выдаст ошибку — TypeError. Итерируемый объект — это объект, который можно перебрать в цикле и получить доступ к отдельному элементу объекта.
Вы только начали изучать программирование на Python или уже давно работаете в сфере IT? На сайте tutortop найдутся курсы как для новичков, так и для профессионалов с опытом. Собрали лучшие курсы:
- «Профессия: Разработчик на Python» с гарантией трудоустройства от Skypro
- «Профессия Python-разработчик с гарантией трудоустройства» от ProductStar
Самое важное
- С помощью метода append(row) в Python можно добавить один элемент в конец списка. Это может быть число, строка, другой список.
- Существует схожий по функционалу метод extend(). Он также подходит для расширения списка, но в качестве параметров использует только итерируемые объекты — список, кортеж, строка. Подходящий вариант, когда нужно соединить несколько разных объектов, например, добавить к строкам списки и наоборот.
- Для добавления элементов также используется оператор +, который работает как стандартный математический оператор. Принцип действия похож на extend — составные части одного списка по очереди добавляются в другой.
GitLab — это комплексное решение для управления репозиториями Git, которое позволяет разработчикам эффективно сотрудничать, управлять кодом, автоматизировать процессы развертывания и следить за состоянием проектов. GitLab объединяет в себе инструмен...
Python-разработчики — это специалисты, которые используют язык программирования Python для разработки программного обеспечения, включая веб-приложения, системы автоматизации и проекты в области машинного обучения. Язык Python популярен благодаря про...
В мире, где технологии развиваются быстрее, чем новые слова появляются в слэнге подростков, выбор правильного курса программирования для вашего ребенка может стать настоящим испытанием. Сегодня мы погрузимся в лабиринты кода и алгоритмов, чтобы помо...
В этой статье мы расскажем о разных программах для программирования, какие из них подойдут новичкам и что предпочитают профи. Редактор кода Это специальная программа для написания и редактирования кода компьютерных программ. Она обычно предлаг...
Системный администратор — это важный специалист в любой организации, который следит за тем, чтобы компьютеры и сети работали без сбоев. В этой статье мы расскажем, кто такие системные администраторы, какие задачи они выполняют, какие навыки им нужны...
Сейчас почти каждый из нас всегда носит с собой смартфон. А кто делает все эти приложения, которыми мы пользуемся каждый день? Это мобильные разработчики. В этой статье мы расскажем о том, кто они такие и что делают. Вы узнаете, какие умения нужны,...