Курс 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. Работа с timedelta
  2. Печать в одной строке
  3. Замена текста с помощью sub
  4. Создание циклической ссылки
  5. Модуль os: работа с файлами и папками
  6. Создание генераторов
  7. Работа с каталогами в Python
  8. Функциональное программирование в Python
  9. Метод hash в Python
  10. Запрос пароля с помощью getpass
  11. Создание вложенных циклов for
  12. Импорт модулей в Python 3.12
  13. Использование type hints
  14. Проблема с изменяемыми аргументами
  15. Курс Data Scientist в медицине
  16. Логирование с Logzero
  17. Создание новых списков
  18. Список переменных с %who
  19. Использование обратной косой черты в f-строках
  20. Оператор is в Python
  21. Изменение логики работы с временем
  22. Распаковка аргументов в Python
  23. Работа с OpenCV
  24. Возвращение нескольких значений через кортеж или класс
  25. Оператор += в Python
  26. Работа с необработанными строками
  27. Метод join() с набором
  28. Сортировка в Python
  29. Метод Event.wait() в Python
  30. Основы слова
  31. Особенности ключей словаря в Python
  32. Принципы программирования
  33. Переменная с нижним подчеркиванием
  34. Работа с файловой системой в Python
  35. Форматирование строк в Python.
  36. Список переменных в Python
  37. Оптимизация методов в Python 3.7
  38. Удаление элемента из списка
  39. Разбиение текста в Python
  40. Работа с базами данных SQLite
  41. Комментарии в Python
  42. Структуры данных в Python
  43. Функции высшего порядка в Python

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