Назад к вопросам
Junior
138
questionbank
Как объединить списки в Python?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Существует несколько способов объединить списки:
- Оператор сложения
+: Создает новый список, конкатенируя исходные.
# Примеры объединения списков
list1 = [1, 2, 3]
list2 = [4, 5, 6]
combined_list = list1 + list2
print(combined_list)
- Метод
extend(): Добавляет элементы другого списка в конец текущего списка, не создавая новый объект.
# Пример использования extend()
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list1.extend(list2)
print(list1)
- Оператор
*с распаковкой (unpacking): Синтаксическое сокращение (PEP 448) для создания нового списка, комбинируя элементы из нескольких итерируемых объектов. Доступно в Python 3.5+.
# Пример распаковки
list1 = [1, 2, 3]
list2 = [4, 5, 6]
combined_list = [*list1, *list2]
print(combined_list)
- List comprehension: Можно использовать для более сложных сценариев объединения, например, с условиями.
# Пример с list comprehension
list1 = [1, 2, 3]
list2 = [4, 5, 6]
combined_list = [x for sublist in [list1, list2] for x in sublist]
print(combined_list)
Сравнение методов:
| Метод | Создает новый список | Изменяет исходный список | Производительность |
|---|---|---|---|
Оператор + |
Да | Нет | Средняя |
Метод extend() |
Нет | Да | Высокая |
Распаковка * |
Да | Нет | Высокая |
| List comprehension | Да | Нет | Зависит от сложности |
Выбор метода зависит от конкретной задачи, требований к производительности и читабельности кода. Для простого объединения без изменения исходных списков предпочтительнее использование + или распаковки *. Если нужно изменить существующий список, extend() будет более эффективным. List comprehension удобен для более сложных случаев.