Курс 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. Работа с рекламными данными в Pandas
  2. Namedtuple в Python
  3. Лямбда-функции в defaultdict
  4. Логирование с Loguru
  5. Инициализация структур данных
  6. Тестирование времени с Freezegun
  7. Оптимизация параметров в Python
  8. Метод join() для объединения строк
  9. Методы list в Python
  10. Асинхронное выполнение задач в процессах
  11. Оптимизация создания строк
  12. Сокращение ссылок с pyshorteners
  13. Сортировка списка по индексам
  14. Определение относительного пути
  15. Порядок операций в Python
  16. Работа с каталогами в Python
  17. Оператор «not» в Python
  18. Сортировка с параметром key
  19. Функциональное программирование в Python
  20. Работа с аргументами командной строки
  21. Работа с часовыми поясами в Python.
  22. Вычисление натуральных логарифмов в NumPy
  23. Однострочники Python
  24. Область видимости переменных
  25. Функции классификации комплексных чисел
  26. Объединение словарей в Python
  27. Переопределение оператора % для объектов
  28. Лямбда-функции для min/max
  29. Функция reversed() в Python
  30. Профилирование кода на Python
  31. Работа с NumPy.linalg
  32. Работа с эмодзи в Python
  33. globals и locals
  34. Функция enumerate в Python
  35. Модуль inspect: получение информации о объектах
  36. Импортирование в Python
  37. Символ подчеркивания в Python
  38. Функциональное программирование.
  39. Декораторы для регистрации функций
  40. Обновление множества в Python
  41. Множественное наследование в Python
  42. Python Calendar Usage
  43. Сортировка данных с лямбда-функциями
  44. Метод join для наборов
  45. Управление асинхронными задачами с помощью Semaphore
  46. Генераторы в Python
  47. Хеширование паролей с солью
  48. Назначение максимального и минимального значения переменной в Python.

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