В Python Лист (список) — это изменяемая (mutable) упорядоченная коллекция элементов. Добавить элементы в список можно несколькими способами, в зависимости от того, куда вы хотите их добавить и сколько элементов сразу.
1. Добавление одного элемента в конец: Append()
Метод append() добавляет Один элемент в самый конец списка.
Python
Мой_список = [1, 2, 3]
Print(f"Исходный список: {мой_список}")
Мой_список. append(4)
Print(f"После append(4): {мой_список}") # Вывод: [1, 2, 3, 4]
Мой_список. append("новое слово")
Print(f"После append(‘новое слово’): {мой_список}") # Вывод: [1, 2, 3, 4, ‘новое слово’]
Мой_список. append([5, 6]) # Можно добавить другой список как один элемент
Print(f"После append([5, 6]): {мой_список}") # Вывод: [1, 2, 3, 4, ‘новое слово’, [5, 6]]
2. Добавление нескольких элементов в конец: Extend()
Метод extend() добавляет Все элементы из итерируемого объекта (например, другого списка, кортежа, строки) в конец существующего списка. Он "расширяет" список.
Python
Мой_список = [10, 20, 30]
Print(f"Исходный список: {мой_список}")
Список_для_добавления = [40, 50, 60]
Мой_список. extend(список_для_добавления)
Print(f"После extend([40, 50, 60]): {мой_список}") # Вывод: [10, 20, 30, 40, 50, 60]
Кортеж_для_добавления = (70, 80)
Мой_список. extend(кортеж_для_добавления)
Print(f"После extend((70, 80)): {мой_список}") # Вывод: [10, 20, 30, 40, 50, 60, 70, 80]
# Строка тоже итерируема (добавит символы по одному)
Мой_список. extend("abc")
Print(f"После extend(‘abc’): {мой_список}") # Вывод: [10, 20, 30, 40, 50, 60, 70, 80, ‘a’, ‘b’, ‘c’]
3. Добавление нескольких элементов в конец: Оператор + (конкатенация)
Оператор + используется для Объединения двух или более списков в новый список. Исходные списки при этом не изменяются.
Python
Список_первый = [1, 2]
Список_второй = [3, 4]
Новый_объединенный_список = список_первый + список_второй
Print(f"Объединение [1, 2] + [3, 4]: {новый_объединенный_список}") # Вывод: [1, 2, 3, 4]
Список_третий = [5, 6]
Еще_больше_объединенный = список_первый + список_второй + список_третий
Print(f"Объединение нескольких: {еще_больше_объединенный}") # Вывод: [1, 2, 3, 4, 5, 6]
# Важно: если вы делаете my_list = my_list + another_list,
# это не изменяет список на месте, а создает новый список и переприсваивает его.
# Для изменения на месте extend() более эффективен.
4. Добавление нескольких элементов в конец: Оператор распаковки *
Синтаксис распаковки * (доступен с Python 3.5) позволяет очень элегантно объединять списки при создании нового списка.
Python
Список_x = [1, 2]
Список_y = [3, 4]
Новый_список = [*список_x, *список_y]
Print(f"Объединение с распаковкой: {новый_список}") # Вывод: [1, 2, 3, 4]
# Можно легко добавлять дополнительные элементы
Смешанный_список = [0, *список_x, 5, *список_y, 6]
Print(f"Смешанный список с распаковкой: {смешанный_список}") # Вывод: [0, 1, 2, 5, 3, 4, 6]
5. Вставка элемента по индексу: Insert()
Метод insert() позволяет добавить Один элемент в список По указанному индексу. Существующие элементы, находящиеся по этому индексу и далее, сдвигаются вправо.
Python
Мой_список = [‘a’, ‘b’, ‘d’]
Print(f"Исходный список: {мой_список}")
Мой_список. insert(2, ‘c’) # Вставляем ‘c’ по индексу 2
Print(f"После insert(2, ‘c’): {мой_список}") # Вывод: [‘a’, ‘b’, ‘c’, ‘d’]
Мой_список. insert(0, ‘начало’) # Вставляем в начало списка
Print(f"После insert(0, ‘начало’): {мой_список}") # Вывод: [‘начало’, ‘a’, ‘b’, ‘c’, ‘d’]
Мой_список. insert(100, ‘конец’) # Если индекс больше длины списка, добавит в конец
Print(f"После insert(100, ‘конец’): {мой_список}") # Вывод: [‘начало’, ‘a’, ‘b’, ‘c’, ‘d’, ‘конец’]
Какой способ выбрать?
- Append(): Если вам нужно добавить Один элемент в Конец списка. Это самый частый сценарий. Extend(): Если вам нужно добавить Несколько элементов (из другого списка, кортежа и т. д.) в Конец существующего списка. Это эффективно, так как изменяет список на месте. Оператор +: Если вам нужно Создать совершенно новый список, объединив два или более существующих. Оператор распаковки *: Отличный, современный и читабельный способ Создать новый список, комбинируя несколько списков и/или отдельные элементы. Insert(): Если вам нужно добавить Один элемент в определенную позицию (не обязательно в конец) списка.
Выбор метода зависит от вашей конкретной задачи.