Курс Python → Python: Splat-оператор и splatty-splat

Python имеет удобный синтаксис для работы с аргументами функций, который позволяет использовать Splat-оператор и splatty-splat. Splat-оператор, обозначаемый одной звездочкой (*), позволяет расширить коллекцию до позиционных аргументов. Это означает, что вы можете передать список или кортеж в функцию, а затем использовать Splat-оператор для распаковки этой коллекции в позиционные аргументы.

С другой стороны, splatty-splat, обозначаемый двумя звездочками (**), позволяет распаковать словарь в именованные аргументы. Это означает, что вы можете передать словарь в функцию и использовать splatty-splat для передачи ключей и значений в качестве именованных аргументов.


# Пример использования Splat-оператора
def print_info(name, age):
    print(f"Name: {name}, Age: {age}")

info = ["Alice", 30]
print_info(*info)
# Вывод: Name: Alice, Age: 30

# Пример использования splatty-splat
def print_details(**kwargs):
    for key, value in kwargs.items():
        print(f"{key}: {value}")

details = {"city": "New York", "country": "USA"}
print_details(**details)
# Вывод:
# city: New York
# country: USA

Использование Splat-оператора и splatty-splat делает код более гибким и позволяет передавать переменное количество аргументов в функции. Это особенно полезно, когда вы не знаете заранее, сколько аргументов будет передано в функцию или когда требуется работать с коллекциями данных, такими как списки или словари.

Используйте Splat-оператор и splatty-splat в Python, чтобы упростить передачу аргументов в функции и обрабатывать коллекции данных более эффективно. Помните, что Splat-оператор расширяет коллекцию до позиционных аргументов, а splatty-splat распаковывает словарь в именованные аргументы, делая ваш код более читаемым и гибким.

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

Автор урока

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

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

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

  1. Сортировка в Python
  2. Модуль Antigravity в Python 3
  3. Замена текста с помощью sub
  4. Синтаксис переменных цикла в Python
  5. Функция format() в Python
  6. Роль запятой в Python
  7. Участие в сообществе @selectel
  8. Методы classmethod и staticmethod
  9. Разделение строк методом split()
  10. Изменение переменной в Python: nonlocal
  11. Создание функций с произвольным количеством аргументов
  12. Перехват исключений в Python
  13. Функция zip() в Python
  14. Метод count() для списков
  15. Форматирование строк в Python
  16. Сортировка и обратный порядок
  17. Хэш-функции и метод цепочек
  18. Создание и удаление объектов
  19. Списковое включение в Python
  20. Расчет времени выполнения
  21. Работа со стеком в Python
  22. Работа с кортежами в Python
  23. Метод __ilshift__ для битового сдвига влево
  24. Работа с timedelta в Python
  25. Создание комплексных чисел
  26. Метод __ixor__ для побитового исключающего ИЛИ
  27. Преобразование объекта в строку
  28. Метод сравнения объектов в Python
  29. Форматирование кода на Python
  30. Сравнение def и lambda в Python
  31. Тестирование функции сложения
  32. Генераторы в Python
  33. Объединение словарей в Python
  34. Протокол управления контекстом
  35. Поиск файлов по шаблону
  36. Лямбда-функции в Python
  37. Python 3.12: переиспользование кавычек
  38. Изменение списка срезами
  39. Цикл for в Python
  40. Проверка версии Python
  41. Метод get() для словарей
  42. Удаление специальных символов
  43. Использование функции product
  44. Вывод переменной и строки в Python
  45. Оператор in и not in в Python

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