Комментарии (1)
Ответ сгенерирован нейросетью и может содержать ошибки
Назначение метода append
Метод append — это встроенный метод списков в Python, который добавляет один элемент в конец списка. Это фундаментальная операция для работы с динамическими структурами данных.
Основное использование
append() модифицирует исходный список на месте (in-place), не создавая новый список. Это отличает его от конкатенации:
# append — модифицирует список
my_list = [1, 2, 3]
my_list.append(4)
print(my_list) # [1, 2, 3, 4]
# конкатенация — создаёт новый список
my_list = [1, 2, 3]
my_list = my_list + [4]
print(my_list) # [1, 2, 3, 4]
Ключевые характеристики
Временная сложность: O(1) в среднем случае. Список в Python использует амортизированное выделение памяти, поэтому добавление элемента происходит очень быстро.
Добавление различных типов данных:
my_list = []
my_list.append(42) # число
my_list.append("hello") # строка
my_list.append([1, 2, 3]) # список целиком
my_list.append({"key": "value"}) # словарь
print(my_list) # [42, "hello", [1, 2, 3], {"key": "value"}]
Обратите внимание: если добавить список, то добавляется сам список как элемент, а не его элементы.
Отличие от extend
Часто путают методы append и extend:
my_list = [1, 2, 3]
# append добавляет элемент целиком
my_list.append([4, 5])
print(my_list) # [1, 2, 3, [4, 5]]
# extend добавляет элементы из итерируемого объекта
my_list = [1, 2, 3]
my_list.extend([4, 5])
print(my_list) # [1, 2, 3, 4, 5]
Практические примеры
Накопление результатов:
def collect_positive_numbers(numbers):
result = []
for num in numbers:
if num > 0:
result.append(num)
return result
print(collect_positive_numbers([-1, 2, -3, 4])) # [2, 4]
Обход графа:
def dfs(graph, node, visited=None):
if visited is None:
visited = []
visited.append(node)
for neighbor in graph.get(node, []):
if neighbor not in visited:
dfs(graph, neighbor, visited)
return visited
Когда использовать append
- Динамическое построение списка: когда количество элементов заранее неизвестно
- Сбор результатов: при фильтрации или трансформации данных
- Реализация структур данных: очередь, стек, граф
- Эффективность: O(1) операция вместо O(n) при конкатенации
Типичные ошибки
# ❌ Неправильно: append возвращает None
my_list = [1, 2, 3].append(4) # my_list будет None!
# ✅ Правильно:
my_list = [1, 2, 3]
my_list.append(4)
Метод append — это один из самых часто используемых методов списков благодаря простоте, эффективности и универсальности.