Код #Статьи

27 ноября, 2025

Использование методов append() и extend() в Python для работы со списками

Осваиваем работу со списками, используя мощные встроенные функции языка.

Освойте Python с бесплатным курсом и создайте телеграм-бота, веб-парсер и сайт с нуля под руководством эксперта из «Сбера»

Узнать больше

Методы append() и extend() дают возможность как добавлять новые элементы в уже созданный список, так и объединять несколько списков в один. В данной статье мы рассмотрим их использование с примерами. В завершение мы поделимся и менее известными способами, которые также помогут в расширении списков.

Функция append() в Python: как она работает?

Метод append() добавляет указанный элемент в конец списка. Как и все другие методы в языке Python, его необходимо вызывать с помощью оператора точки.

Метод append() принимает единственный аргумент item, который добавляется в завершающую часть списка. Аргумент может иметь любой тип: это могут быть числа, строки, словари и прочие объекты. В результате выполнения метода возвращается значение None, что означает, что он не возвращает ничего.

Предположим, у нас имеется список a, содержащий строки.

Чтобы включить в него новую строку ‘row’, необходимо передать её в качестве аргумента методу append(). Поскольку этот метод относится к типу list, его следует вызывать для объекта a, используя оператор точки:

Новая строка была успешно добавлена в конец нашего списка. Всё функционирует как следует.

Давайте усложним задачу, добавив еще один список, состоящий из двух строк:

Мы наблюдаем, что к элементам a был добавлен список b, который включает в себя вложенные элементы. Однако, что если мы захотим, чтобы элементы из b были добавлены по отдельности? Например, вот так:

К сожалению, метод append() не позволяет выполнить эту операцию, так как он принимает исключительно один аргумент. Если вы попытаетесь передать несколько объектов, разделённых запятыми, интерпретатор выдаст исключение типа TypeError.

К счастью, существует метод extend(), который дает возможность добавлять сразу несколько элементов. Об этом мы и обсудим в следующей части.

Функция extend() в Python: как она работает?

Метод extend() принимает итерируемый объект в качестве аргумента и добавляет его элементы к уже существующему списку.

Функция extend() добавляет дополнительные элементы в конец списка, однако, в отличие от метода append(), она может принимать в качестве аргументов итерируемые объекты, такие как списки, кортежи и строки. При этом объединяемые списки могут включать элементы различных типов, что позволяет, к примеру, комбинировать строки с числами или числа с кортежами.

Аналогично методу append(), этот метод также возвращает значение None.

Давайте вернёмся к нашему перечню a:

Предположим, что нам необходимо объединить его с еще одним списком, содержащим строки. Мы можем передать переменную b в метод extend(), что позволит нам получить желаемый результат:

Как вы можете заметить, каждый компонент из b был индивидуально включен в a.

Аналогично, мы способны применять аналогичные операции и к другим итерируемым объектам, таким как кортежи или строки.

Имейте в виду, что при использовании метода extend() строки преобразуются в списки символов, и элементы добавляются по одному. Например, строка ‘man’ будет разбита на отдельные символы: ‘m’, ‘a’ и ‘n’.

Когда в функцию extend() передается неитерируемый объект, такой как число, Python выдает ошибку типа TypeError.

В полученном сообщении корректно разъясняется, что число не является итерируемым объектом.

Альтернативные методы добавления элементов в список

С целью облегчить жизнь программистам на Python, создатели языка внедрили несколько функций, позволяющих оперативно добавлять элементы в списки.

Оператор + может напоминать привычный математический знак, однако, когда речь идет о списках, он функционирует аналогично методу extend():

Все элементы из первого списка были добавлены в конец второго.

Срезы. Альтернативным методом добавления элементов в список является необычное применение индексации. Это выглядит следующим образом:

Это может показаться несколько необычным, но на самом деле это эффективно. Когда мы пытаемся получить доступ к элементам a, которые отсутствуют, язык автоматически добавляет элементы из списка b, на который мы сослались справа от оператора присваивания.

Что запомнить

  • Метод append() предоставляет возможность добавлять в список отдельный элемент, будь то число, строка или даже другой список.
  • Метод extend() функционирует аналогично методу append(), однако его аргументом может выступать любой итерируемый объект, например, список, кортеж или строка. Элементы этого объекта добавляются в другой список по одному.
  • Помимо использования методов append() и extend(), существует возможность добавления элементов в список с помощью оператора + и срезов. Оба этих подхода функционируют аналогично extend(), добавляя элементы из одного списка в другой поочерёдно.

В нашем телеграм-канале вас ждет множество увлекательных материалов о кодировании. Не упустите возможность подписаться!

Читайте также:

  • Самостоятельное и бесплатное изучение Python: пошаговый план

    1. Определите свои цели. Прежде чем погружаться в изучение, подумайте, какую задачу вы хотите решить с помощью Python. Это может быть веб-разработка, анализ данных, автоматизация задач или создание игр. Четкое понимание целей поможет вам сосредоточиться на нужных материалах.

    2. Найдите качественные ресурсы. В интернете доступно множество бесплатных курсов, видеоуроков и учебников. Изучите платформы вроде Coursera, edX, Codecademy и YouTube, чтобы подобрать подходящие курсы.

    3. Начните с основ. Освойте базовые концепции языка, такие как синтаксис, переменные, типы данных, операторы и управляющие конструкции. Это фундамент, на котором строится дальнейшее обучение.

    4. Практикуйтесь. Регулярная практика — ключ к успешному освоению языка. Используйте онлайн-платформы, такие как LeetCode или HackerRank, для решения задач и участия в конкурсах по программированию.

    5. Разработайте свои проекты. Применяйте полученные знания на практике, создавая собственные проекты. Это могут быть простые скрипты, приложения или даже игры. Проектная деятельность помогает углубить знания и понять, как применять язык в реальных условиях.

    6. Изучайте библиотеки и фреймворки. После освоения основ знакомьтесь с популярными библиотеками, такими как NumPy, Pandas, Matplotlib для анализа данных или Flask и Django для веб-разработки. Они расширят ваши возможности и помогут углубить знания.

    7. Участвуйте в сообществах. Присоединяйтесь к форумам, группам в социальных сетях и чатам, посвященным Python. Общение с единомышленниками и опытными программистами поможет вам получить новые знания, советы и поддержку.

    8. Не бойтесь ошибок. Ошибки — это естественная часть процесса обучения. Не стесняйтесь задавать вопросы и искать решения, когда сталкиваетесь с трудностями. Это поможет вам стать более уверенным в своих навыках.

    9. Постоянно развивайтесь. Программирование — это область, которая постоянно меняется. Следите за новыми трендами, читайте статьи, книги и блоги, чтобы оставаться в курсе актуальных технологий и подходов.

    Следуя этому алгоритму, вы сможете эффективно изучить Python самостоятельно и без финансовых затрат.

  • «Изменил свою карьеру, пока не настал момент сожалеть»: по какой причине киберполицейский решил перейти в сферу информационных технологий.
  • Рекурсия — это метод программирования, при котором функция вызывает саму себя для решения задачи. Этот подход часто используется для решения проблем, которые можно разбить на более мелкие, аналогичные подзадачи. Рассмотрим, как рекурсия функционирует на примере языка Python.

    Предположим, нам нужно вычислить факториал числа. Факториал n (обозначаемый как n!) — это произведение всех положительных целых чисел от 1 до n. Например, факториал 5 равен 5 × 4 × 3 × 2 × 1, что дает 120.

    Мы можем определить рекурсивную функцию для вычисления факториала следующим образом:

    1. Определим базовый случай, который завершит рекурсивные вызовы. Обычно это условие, при котором функция перестает вызывать саму себя. В случае факториала базовым случаем будет 0! = 1.

    2. Определим рекурсивный случай, в котором функция вызывает саму себя с аргументом, уменьшающимся на единицу. Это будет n! = n × (n — 1)!.

    Теперь давайте посмотрим на реализацию этой идеи в Python:

    «`python
    def factorial(n):
    if n == 0: # базовый случай
    return 1
    else: # рекурсивный случай
    return n * factorial(n — 1)
    «`

    Когда мы вызываем `factorial(5)`, процесс будет выглядеть следующим образом:

    — `factorial(5)` вызывает `factorial(4)`
    — `factorial(4)` вызывает `factorial(3)`
    — `factorial(3)` вызывает `factorial(2)`
    — `factorial(2)` вызывает `factorial(1)`
    — `factorial(1)` вызывает `factorial(0)`

    На этом этапе, поскольку n равно 0, срабатывает базовый случай, и функция возвращает 1. Затем результаты начинают возвращаться обратно через все предыдущие вызовы:

    — `factorial(1)` вернет 1 × 1 = 1
    — `factorial(2)` вернет 2 × 1 = 2
    — `factorial(3)` вернет 3 × 2 = 6
    — `factorial(4)` вернет 4 × 6 = 24
    — `factorial(5)` вернет 5 × 24 = 120

    Таким образом, окончательный результат вызова `factorial(5)` — это 120. Рекурсия позволяет компактно и удобно решать задачи, однако важно помнить о возможных ограничениях, таких как глубина рекурсии, которая может привести к ошибкам переполнения стека, если количество рекурсивных вызовов будет слишком велико.