5.1 Добавление элементов
В Python добавление элементов в список можно осуществить разными способами, что делает списки одними из наиболее гибких структур данных в языке. Вот основные методы, которые Python предоставляет для добавления элементов в список:
Использование метода append()
Метод append() добавляет элемент в конец списка. Это самый простой и часто используемый метод для добавления одного элемента:
my_list = [1, 2, 3]
my_list.append(4)
print(my_list) # Выведет [1, 2, 3, 4]
Использование метода extend()
Метод extend() позволяет добавить в список сразу несколько элементов. В качестве аргумента метод принимает итерируемый объект (например, другой список, кортеж, множество):
my_list = [1, 2, 3, 4]
my_list.extend([5, 6])
print(my_list) # Выведет [1, 2, 3, 4, 5, 6]
Использование метода insert()
Метод insert() добавляет элемент на указанную позицию в списке. Этот метод принимает два аргумента: индекс, на который следует поместить элемент, и сам элемент:
my_list = [1, 2, 3, 4, 5, 6]
my_list.insert(0, 0)
print(my_list) # Выведет [0, 1, 2, 3, 4, 5, 6]
Добавление элементов с помощью оператора сложения
Списки также можно объединять с помощью оператора «+», что также приводит к добавлению элементов одного списка в другой:
my_list = [0, 1, 2, 3, 4, 5, 6]
my_list = my_list + [7, 8]
print(my_list) # Выведет [0, 1, 2, 3, 4, 5, 6, 7, 8]
Особенности и предостережения
При использовании append() и extend() изменяется исходный список. Однако при использовании «+» создается новый список, поэтому если у вас где-то осталась ссылка на старый список, то он останется неизменным.
5.2 Прямое изменение элемента
В Python изменение элементов в списке является простой операцией благодаря мутабельности (изменяемости) списков. Это позволяет вам модифицировать списки по месту, не создавая новых копий. Вот как можно работать с этими возможностями:
Прямое изменение элементов
Чтобы изменить элемент в списке, достаточно присвоить новое значение по индексу:
my_list = [1, 2, 3, 4]
my_list[2] = 30
print(my_list) # Выведет [1, 2, 30, 4]
5.3 Присваивание диапазона элементов:
В Python присваивание диапазона элементов в списке осуществляется с помощью срезов. Срезы позволяют не только получать подсписки, но и присваивать их. Это делает списки в Python особенно гибкими для работы с последовательностями данных.
Использование срезов для присваивания
Срезы в Python могут использоваться для изменения нескольких элементов списка сразу. Например, можно заменить часть списка другими значениями, указав срез и присвоив ему новый список элементов:
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
numbers[2:5] = [20, 30, 40]
print(numbers) # Выведет [0, 1, 20, 30, 40, 5, 6, 7, 8, 9]
Количество элементов слева и справа от знака равенства не обязано совпадать.
Элементов справа может быть больше:
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
numbers[2:2] = [20, 30, 40]
print(numbers) # Выведет [0, 1, 20, 30, 40, 2, 3, 4, 5, 6, 7, 8, 9]
Или меньше:
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
numbers[2:9] = [20, 30, 40]
print(numbers) # Выведет [0, 1, 20, 30, 40, 9]
Такой подход позволяет писать очень компактный код, но не забывайте, что в случае работы со срезами, последний элемент не входит в диапазон.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ