Курс Python → Объединение, распаковка и деструктуризация

В Python для объединения элементов списка, кортежа или множества в одну строчку можно использовать звездочку (*). Этот способ, называемый «мерджем», позволяет сделать код более компактным и читаемым. Например, если у нас есть несколько списков и мы хотим объединить их в один, мы можем воспользоваться звездочкой:


list1 = [1, 2, 3]
list2 = [4, 5, 6]
merged_list = [*list1, *list2]
print(merged_list)  # [1, 2, 3, 4, 5, 6]

Самый элегантный способ использования звездочки — это в качестве префикса для распаковки элементов. Например, если у нас есть список, который мы хотим передать как аргументы функции, мы можем распаковать его с помощью звездочки:


numbers = [1, 2, 3]
print(*numbers)  # 1 2 3

Однако помимо распаковки, звездочки также могут быть использованы для деструктуризации присваиваний в Python. Это означает, что мы можем присвоить значения элементов кортежа или списка переменным с помощью звездочки:


first, *rest = [1, 2, 3, 4, 5]
print(first)  # 1
print(rest)  # [2, 3, 4, 5]

Таким образом, использование звездочек в Python не только позволяет объединять элементы коллекций и распаковывать их, но и делает код более элегантным и удобочитаемым. Этот механизм дает разработчикам больше гибкости и возможностей для работы с данными в языке программирования Python.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Dict Comprehension в Python
  2. Структура строк в Python
  3. Работа с CSV файлами в Python
  4. Функция reduce() из модуля functools
  5. Работа с аргументами командной строки
  6. Добавление элементов в список
  7. Работа с файлами в Python
  8. Ускорение кода с помощью векторизации
  9. Подсчет элементов с помощью Counter из collections
  10. Генераторы в Python
  11. Работа с defaultdictами в Python
  12. Создание уникального множества
  13. Отображение графиков в Jupyter с Matplotlib
  14. Применение функции map() с лямбда-функциями
  15. Concrete Paths — метод .with_suffix()
  16. Особенности ключей словаря в Python
  17. Присвоение и ссылки
  18. Конвертация коллекций в Python.
  19. JMESPath в Python
  20. Протокол управления контекстом
  21. Установка Home Assistant
  22. Сортировка с параметром key
  23. JSON-esque в Python
  24. Основы Python
  25. Вывод с переменной через запятую
  26. Модуль subprocess: запуск внешних команд
  27. Метод __call__ в Python
  28. Проверка памяти объекта
  29. Метод rmatmul для обратного матричного умножения
  30. Модуль antigravity: генерация координат
  31. Работа с кортежами в Python
  32. Модуль Operator в Python
  33. Оптимизация гиперпараметров с Scikit Optimize
  34. Игра «Виселица» на Python
  35. Поиск самого длинного слова в списке с использованием max()
  36. Работа с байтовыми строками в Python
  37. Python Translator: создание локальных переводчиков
  38. Измерение времени выполнения кода
  39. Профилирование с cProfile
  40. Принцип одной функции
  41. Функции range() в Python
  42. Путь к интерпретатору Python
  43. Форматирование строк в Python
  44. Протокол управления контекстом
  45. Переменные в Python

Marketello читают маркетологи из крутых компаний