Курс 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. Управление виртуальными окружениями в Python
  2. Роль ключевого слова self
  3. Оценка выражений генератора в Python
  4. Отправка поздравлений по дню рождения
  5. Импорт модулей в Python 3.12
  6. Подчеркивание в REPL
  7. Форматирование строк в Python
  8. Поиск элементов BeautifulSoup
  9. Создание новых функций через partial
  10. Перезапуск ячейки в Jupyter Notebook с dostoevsky
  11. Преобразование типов данных в set comprehension
  12. Тип данных TypeVarTuple
  13. Объединение словарей в Python
  14. Генераторы в Python
  15. Импорт классов из другого файла
  16. Каналы Senior: Python, Java, Frontend, SQL, C++
  17. Основы работы со строками в Python
  18. Изменение IP-адреса в Python
  19. Создание новых функций с помощью functools.partial
  20. Enum в Python
  21. Оптимизация интернирования строк
  22. Реализация метода __abs__ в Python
  23. Работа с путями в Python
  24. Оформление текста в консоли с TermColor
  25. Применение команды break
  26. Установка и использование emoji
  27. Numpy: разбиение массивов
  28. Основные методы NumPy
  29. Progress с библиотекой tqdm
  30. Вывод сложных структур данных с помощью pprint
  31. Функции all() и any() в Python
  32. Многострочные комментарии в Python
  33. Python Метод sleep() времени
  34. Работа с NumPy.linalg
  35. Подписка на каналы разработчиков
  36. Выражения-генераторы в Python
  37. Beautiful Soup — извлечение данных из HTML
  38. Получение комбинаций в Python
  39. Работа с геоданными с помощью geopy
  40. Работа с комбинациями в Python.
  41. UserList в Python: Описание и примеры использования
  42. Работа с f-строками 2.0
  43. Получение частей дроби
  44. Создание Telegram-бота на Python
  45. Работа с очередями в Python
  46. Объединение множеств в Python
  47. HTTP-запросы с библиотекой Requests

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