Добавить значение элемента в конец списка
Операция позволяет добавить в конец последовательности новый объект x . Метод sequence.append() производит добавление элемента x в конец последовательности sequence .
Операция добавления в конец последовательности объекта x эквивалентна выполнению выражения sequence[len(sequence):len(sequence)] = [x]
Эта операция поддерживаются изменяемыми типами последовательностей. Дополнительно смотрите как можно добавить элемент в последовательность по индексу.
Для добавления нескольких значений в конец списка смотрите метод list.extend()
Примеры добавления одного значения в конец списка.
>>> x = [3, 6, 9] >>> x.append(150) >>> x # [3, 6, 9, 150] >>> x.append([150, 200]) >>> x # [3, 6, 9, 150, [150, 200]] >>> x.append('foo') >>> x # [3, 6, 9, 150, [150, 200], 'foo'] >>> x.append(('one', 'two')) >>> x # [3, 6, 9, 150, [150, 200], 'foo', ('one', 'two')]
Альтернативная операция добавления одного значения в конец списка.
# добавление одного элемента в конец списка # альтернатива операции x.append(1.3) >>> x = [1, 1.1, 1.2] >>> x += [1.3] >>> x # [1, 1.1, 1.2, 1.3] # БУДЬТЕ ВНИМАТЕЛЬНЫ. нужно # добавлять список из одного элемента >>> x += 1.4 # Traceback (most recent call last): # File "", line 1, in # TypeError: 'float' object is not iterable # БУДЬТЕ ОСТОРОЖНЫ. # строка представляет из себя кортеж >>> x += '1.4' >>> x # [1, 1.1, 1.2, 1.3, '1', '.', '4'] # что таким способом добавить строку # оберните ее в квадратные скобки >>> x += ['123'] >>> x # [1, 1.1, 1.2, 1.3, '1', '.', '4', '123']
- ОБЗОРНАЯ СТРАНИЦА РАЗДЕЛА
- Изменение/замена элемента списка по индексу
- Изменение части списка операцией среза
- Изменение списка срезом c заданным шагом
- Удаление части списка операцией среза
- Удаление части списка по срезу с заданным шагом
- Метод list.append(), добавляет значение в конец списка
- Метод list.clear(), очищает список
- Метод list.copy(), копия списка
- Метод list.extend(), расширяет список другой последовательностью
- Расширение списка его содержимым
- Метод list.insert(), вставить элемент по индексу
- Метод list.pop(), получение с удалением элемент списка
- Метод list.remove(), удаление элемента списка по значению
- Метод list.reverse(), разворачивает элементы списка
- Удаление элемента списка по индексу
- Удаление дубликатов из списка Python с сохранением очередности
Метод append() и extend() в Python
Метод append() в Python добавляет элемент в конец списка.
list.append(item)
Параметры
Метод принимает единственный аргумент:
- item – элемент, который нужно добавить в конец списка.
Элементом могут быть числа, строки, словари, другой список и т.д.
Возвращаемое значение
Метод не возвращает никакого значения (возвращает None).
Пример 1: Добавление элемента в список
# animals list animals = ['cat', 'dog', 'rabbit'] # 'guinea pig' is appended to the animals list animals.append('guinea pig') # Updated animals list print('Updated animals list: ', animals)
Updated animals list: ['cat', 'dog', 'rabbit', 'guinea pig']
Пример 2: Добавление списка в список
# animals list animals = ['cat', 'dog', 'rabbit'] # list of wild animals wild_animals = ['tiger', 'fox'] # appending wild_animals list to the animals list animals.append(wild_animals) print('Updated animals list: ', animals)
Updated animals list: ['cat', 'dog', 'rabbit', ['tiger', 'fox']]
Важно отметить, что в список животных в приведенной выше программе добавляется один элемент (список wild_animals).
Если вам нужно добавить элементы списка в другой список (а не в сам список), используйте метод extend().
list1.extend(iterable)
При этом все элементы Iterable добавляются в конец list1.
Параметры
Как уже упоминалось, метод принимает итерацию, такую как список, кортеж, строка и т.д.
Возвращаемое значение
Метод изменяет исходный список, он не возвращает никакого значения.
Пример 1: Использование метода
# language list language = ['French', 'English'] # another list of language language1 = ['Spanish', 'Portuguese'] # appending language1 elements to language language.extend(language1) print('Language List:', language)
Language List: ['French', 'English', 'Spanish', 'Portuguese']
Пример 2: Добавить элементы кортежа и установить их в список
# language list language = ['French'] # language tuple language_tuple = ('Spanish', 'Portuguese') # language set language_set = # appending language_tuple elements to language language.extend(language_tuple) print('New Language List:', language) # appending language_set elements to language language.extend(language_set) print('Newer Language List:', language)
New Language List: ['French', 'Spanish', 'Portuguese'] Newer Language List: ['French', 'Spanish', 'Portuguese', 'Japanese', 'Chinese']
Другие способы расширения списка
Вы также можете добавить в список все элементы итерации, используя:
a = [1, 2] b = [3, 4] a += b # a = a + b # Output: [1, 2, 3, 4] print('a =', a)
a = [1, 2, 3, 4]
2. Синтаксис нарезки списка.
a = [1, 2] b = [3, 4] a[len(a):] = b # Output: [1, 2, 3, 4] print('a =', a)
Функции append() и extend() в Python: как добавить элементы в список
Знание функций языка упрощает процесс работы над кодом. Мы решили рассказать о методах append() и extend() в Python, которые помогают добавлять новые элементы в готовый список или объединить несколько объектов. Вы узнаете, что делает append в Python, зачем нужен метод extend и в чём разница этих функций.
Объединение списков при помощи оператора +
Перед тем, как разобрать работу методов append и extend, рассмотрим, как происходит объединение двух списков с помощью оператора +. Допустим, у вас есть два списка — list и list23, которые нужно соединить в один. При их объединении элементы одного списка не будут добавляться к элементам другого. Вы получите новый список, состоящий из содержимого list и list23, а изначальные данные остаются в сохранённом виде.
Вы только начали изучать программирование на Python или уже давно работаете в сфере IT? На сайте tutortop найдутся курсы как для новичков, так и для профессионалов с опытом. Собрали лучшие курсы:
- «Стань Python-разработчиком и получи работу за рубежом» от MathSub
- «Профессия: Разработчик на Python с гарантией» трудоустройства от Skypro
- «Профессия Python-разработчик с гарантией трудоустройства» от ProductStar
- «Бекенд-разработчик на Python» от SF Education
Сейчас мы дарим 10 000 ₽ на обучение в любой из школ-партнёров. При покупке через tutortop вы также получите курсы стоимостью 20 000 ₽ абсолютно бесплатно.
Получите промокод 10 000 ₽ на обучение и курсы стоимостью 20 000 ₽ в подарок!
Нажимая на кнопку «Получить», я соглашаюсь на обработку моих персональных данных.
Спасибо! Мы получили вашу заявку. Скоро с вами свяжемся.
Методы списков append() и extend() нужно использовать в том случае, когда необходимо расширить уже существующий список, а не создавать новый. Теперь подробнее о том, как это сделать.
Метод append в Python
Функция или метод append() в Питоне относится к методам списка, которых всего 11. Он помогает добавлять объект в конец списка. Как и другие методы, вызвать append можно через оператор *точка*. Особенность элемента в том, что с помощью него можно принять только один аргумент item и добавить его в конец списка. Параметр бывает разным — строка, число или словарь (dict, dictionary).
Использование метода append() в Python
В качестве примера рассмотрим список *d*, в который нужно добавить строку.
Изначально он выглядит так:
d = [‘flow’, ‘low’, ‘lot’]
Чтобы добавить ещё одну строку ‘sun’, нужно передать её в качестве аргумента append(). Как мы писали выше, вызывать его можно через оператор *точка*. Выглядит это так:
[‘flow’, ‘low, ‘lot’, ‘sun’]
Строка ‘sun’ появилась в конце списка: значит всё сделано верно. Но что будет, если добавить ещё один список, в котором три строки?
[‘flow’, ‘low, ‘lot’, ‘sun’ [‘cat’, ‘pain’]]
Вы видите, что в списке d новый список b присоединился в качестве вложения. Добавить элементы отдельно при помощи append не получится — метод принимает только один аргумент. Этим он и отличается от extend, речь о котором пойдёт ниже. Дело в том, что extend помогает включить данные сразу нескольких элементов.
Метод extend в Питоне
Extend также добавляет элементы в конец списка, но в этом случае вам нужно ввести итерируемую последовательность (кортеж, список, строка и другое), где каждый элемент потом станет отдельной частью списка. Плюсом вы можете сочетать несколько различных видов элементов, например, объединить строки со списками.
Вернёмся к предыдущему примеру и списку:
d = [‘flow’, ‘low’, ‘lot’].
Нам необходимо соединить его с последовательностью b = [‘rain’, ‘man’]. Вот как это будет выглядеть:
[‘flow’, ‘low’, ‘lot’, ‘rain’, ‘man’]
Каждый из элементов b по отдельности добавился к d. Вы также можете добавить и другие итерируемые объекты — кортежи, строки.
[‘flow’, ‘low’, ‘lot’, ‘rain’, ‘man’,’more’, ‘feel’]
[‘flow’, ‘low’, ‘lot’, ‘rain’, ‘man’,’more’, ‘feel’, ‘l’, ‘o’, ‘v’, ‘e’]
Обратите внимание, что строки в extend() становятся списками символов и добавляются посимвольно — ‘love’ превратилось в ‘l’, ‘o’, ‘v’, ‘e’. Важно, что передать в extend не итерируемый объект, например, число не получится. Python выдаст ошибку — TypeError. Итерируемый объект — это объект, который можно перебрать в цикле и получить доступ к отдельному элементу объекта.
В нашем блоге есть несколько статей про программирование на Python, которые могут быть вам интересны:
- Топ-7 онлайн-игр, которые помогут освоить программирование на Python
- Python-разработка, или Как работать удаленно из любой точки мира
- С чего начать кодить? Топ-10 книг по Python
Самое важное
- С помощью метода append(row) в Python можно добавить один элемент в конец списка. Это может быть число, строка, другой список.
- Существует схожий по функционалу метод extend(). Он также подходит для расширения списка, но в качестве параметров использует только итерируемые объекты — список, кортеж, строка. Подходящий вариант, когда нужно соединить несколько разных объектов, например, добавить к строкам списки и наоборот.
- Для добавления элементов также используется оператор +, который работает как стандартный математический оператор. Принцип действия похож на extend — составные части одного списка по очереди добавляются в другой.
Настя Воронова
Младший редактор. Любит создавать интересный контент, который помогает читателям узнавать что-то новое. Делает статьи понятными для чтения, а содержание — глубоким и осмысленным.
Сергей Пронин
Разработчик на C++, Python, JavaScript и PHP, разбирается в Machine Learning.
Дарим бесплатный курс «Как читать натальную карту самостоятельно»
Оставьте контакт, чтобы получить его
![]()
Отправить в WhatsApp
Нажимая на кнопку, я соглашаюсь с Пользовательским соглашением
Спасибо! Скоро отправим подарок на ваш телефон.
Топ школ, где учат востребованным специальностям
Хочу выразить благодарность Nordic IT School, и лично преподавателю курса web-разработки — Михаилу Борунову!
Много думал о том, могут ли дать реальные навыки и знания краткосрочные курсы — ответ нашел в Nordic IT School. Отличный курс для всех тех, кто хочет начать развиваться в новой профессии. Очень много интересных заданий, доступная подача материала — если что-то бывает непонятно, преподаватель всегда объяснит, укажет на ошибки, поможет с домашкой. Понравилась доступность подачи материалов — нет сухого академизма, как в ВУЗе, всегда живые примеры из реальной жизни. А если пропустил занятие (такое бывало, т. к. есть основная работа) — не проблема. В личном кабинете можно всегда посмотреть видеозапись того, что делали на занятии, скачать необходимые материалы, написать преподу, задать вопрос. В итоге — за несколько месяцев я освоил кучу новых навыков, понимаю как работают разработчики сайтов, а главное — умею делать это сам. Это был мой первый шаг в новую профессию, за что еще раз благодарю Михаила и команду Nordic IT.
Отличный интенсивный курс DevOps Инженер (осень 2022 г)
Отличный курс, материалы и ментор.
Как писали ранее он не станет волшебной таблеткой если вы не будете много заниматься самостоятельно. Но для старта и понимания сверху основных вещей, а так-же для понимания ЧТО учить СЕГОДНЯ курс действительно отличный. А дальше, имея полученные основы и знания уже можно самостоятельно изучать вглубь.
Курс не дешевый, но потраченных денег абсолютно не жалею.
Обучение в «GeekBrains»
Хотела бы поделиться опытом обучения в «GeekBrains» на интернет-маркетолога. Курс был приобретён мной в январе 2023 года, и с начала времени обучения в моей жизни много чего изменилось: я не только приобрела новые знания, но и нашла идеально подходящую мне работу, о которой давно мечтала. На сегодняшний день я ещё не окончила курсы полностью, но уже отчётливо осознаю, чем буду заниматься в своём будущем. Конечно, для усвоения новых знаний приходится попотеть, но это определённо стоит того, чтобы изменить свою жизнь в лучшую сторону. Если вы целеустремлённый, вдохновлённый своими мечтами человек, то определённо справитесь с возлагаемой нагрузкой и ответственностью, а значит, непременно найдёте то, что вам нужно.
Методы списков Python
Для добавления множества элементов используйте extend() . Внимание: Данный метод модифицирует исходный объект на месте, возвращая при этом None .
list.clear( i ) ¶
Удаляет из списка все имеющиеся в нём значения.
my_list = [1, 2, 3]my_list.clear() # Nonemy_list # []
Действие метода эквивалентно выражению del my_list[:] .
list.copy() ¶
Возвращает копию списка. Внимание: Возвращаемая копия является поверхностной (без рекурсивного копирования вложенных элементов).
my_list = [1, 2, 3]my_list_copy = my_list.copy() # [1, 2, 3]my_list # []
Действие метода эквивалентно выражению my_list[:] .
list.count(x) ¶
random_list = [4, 1, 5, 4, 10, 4]random_list.count(4) # 3
Метод count считает количество значений x в списке.
list.extend(iterable) ¶
Дополняет список элементами из указанного объекта.
- it : Объект, поддерживающий итерирование, элементами которого требуется дополнить список.
my_list = []my_list.extend([1, 2, 3]) # Nonemy_list # [1, 2, 3]my_list.extend('add') # Nonemy_list # [1, 2, 3, 'a', 'd', 'd']
Для добавления единственного элемента используйте append() .
Внимание: Данный метод модифицирует исходный объект на месте, возвращая при этом None .
list.index(x , start , end ) ¶
Метод возвращает положение первого индекса, со значением х . Также можно указать границы поиска start и end .
list.insert(i, x) ¶
Вставляет указанный элемент перед указанным индексом
- i : Позиция (индекс), перед которой требуется поместить элемент. Нумерация ведётся с нуля. Поддерживается отрицательная индексация.
- x : Элемент, который требуется поместить в список.
my_list = [1, 3] my_list.insert(1, 2)my_list # [1, 2, 3] my_list.insert(-1, 4)my_list # [1, 2, 4, 3]
Внимание: Данный метод модифицирует исходный объект на месте, возвращая при этом None .
list.pop( i ) ¶
Возвращает элемент на указанной позиции , удаляя его из списка.
- i=None : Позиция искомого элемента в списке (целое число). Если не указана, считается что имеется в виду последний элемент списка. Отрицательные числа поддерживаются.
my_list = [1, 2, 3, 4, 5]last = my_list.pop() # 5my_list # [1, 2, 3, 4]second = my_list.pop(-3) # 2my_list # [1, 3, 4]first = my_list.pop(0) # 1my_list # [3, 4]
Чтобы удалить элемент из списка не возвращая его, воспользуйтесь list.remove() .
list.remove(x) ¶
Удаляет из списка указанный элемент.
- x : Элемент, который требуется удалить из списка. Если элемент отсутствует в списке, возбуждается ValueError . Удаляется только первый обнаруженный в списке элемент, значение которого совпадает со значением переданного в метод.
my_list = [1, 3] my_list.remove(1)my_list # [3] my_list.remove(4) # ValueError
Внимание: Данный метод модифицирует исходный объект на месте, возвращая при этом None .
list.reverse() ¶
Перестраивает элементы списка в обратном порядке.
my_list = [1, 'two', 'a', 4]my_list.reverse() # Nonemy_list # [4, 'a', 'two', 1]
Внимание: Данный метод модифицирует исходный объект на месте, возвращая при этом None .
list.sort(key=None, reverse=False) ¶
Сортирует элементы списка на месте.
- key=None : Функция, принимающая аргументом элемент, используемая для получения из этого элемента значения для сравнения его с другими.
- reverse=False : Флаг, указывающий следует ли производить сортировку в обратном порядке.
my_list = [1, 'two', 'a', 4, 'a']# Попытка упорядочить/сравнить несравнимые типы вызовет исключениеmy_list.sort() # TypeError: unorderable types: str() # Отсортируем «вручную», так чтобы 'а' были в конце.my_list.sort(key=lambda val: val == 'a') # None # Фактически мы отсортировали в соответствии # с маской [False, False, False, True, True]my_list # ['two', 4, 1, 'a', 'a']
Внимание: Данный метод модифицирует исходный объект на месте, возвращая при этом None .
