Курс Python → Распаковка аргументов в Python

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

Когда функция требует большое количество аргументов, использование * и ** может значительно упростить передачу параметров. Вместо того чтобы перечислять все аргументы по одному, можно создать кортеж или словарь и передать их с помощью символов * и **. Это делает код более компактным и понятным.


def example_function(*args, **kwargs):
    for arg in args:
        print(arg)
    for key, value in kwargs.items():
        print(f"{key}: {value}")
        
arguments = (1, 2, 3)
keyword_arguments = {'name': 'Alice', 'age': 30}

example_function(*arguments, **keyword_arguments)

Пример кода выше демонстрирует использование *args и **kwargs в функции. Переменная args будет представлять собой кортеж с переданными аргументами, а kwargs — словарь с именованными аргументами. Такой подход делает функцию более гибкой и позволяет передавать различные комбинации аргументов.

Использование распаковки аргументов также улучшает читаемость кода. Вместо того чтобы анализировать длинный список аргументов, разбитый запятыми, можно сразу увидеть, какие аргументы передаются функции. Это делает код более понятным и удобным для сопровождения.

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

Автор урока

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

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

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

  1. Выход из профиля в Django
  2. Принципы программирования
  3. Сокращение ссылок с pyshorteners
  4. Декораторы в Python
  5. Генераторы в Python
  6. Логические значения в Python
  7. Форматирование объектов с модулем pprint
  8. Модуль Antigravity в Python 3
  9. Виртуальные среды в Python
  10. Библиотека sh: использование команд bash в Python
  11. Поиск кода
  12. Переменная Шредингера
  13. Возведение в квадрат с помощью itertools
  14. Бесконечная проверка в Python
  15. Сравнение строк в Python
  16. Основы Python за 14 дней
  17. Установка и использование pyshorteners
  18. Управление браузером с Selenium
  19. Получение ID текущего процесса
  20. Разработка игры Pong с turtle
  21. Возврат нескольких значений
  22. GitHub в Telegram: подписка на уведомления
  23. Обработка исключений в Python 3
  24. Создание словаря и множества
  25. Переопределение метода __pow__
  26. Сохранение и загрузка модели в PyTorch
  27. Модуль sys: основы
  28. Работа с пользовательским вводом
  29. Функциональное программирование в Python
  30. Нахождение отличий в списках
  31. Сортировка в Python
  32. Упрощенный вывод данных в Python
  33. Операции с кортежами
  34. Использование *args
  35. Автоматизация с Python
  36. Создание GUI с Tkinter: Entry
  37. Подписка на Kaspersky Team
  38. Умножение строк и списков
  39. Преобразование строки в число
  40. Комментарии в Python
  41. Установка и использование pyshorteners
  42. Многострочные комментарии в Python
  43. Именованные кортежи в Python
  44. Работа с zip-архивами в Python
  45. Профилирование с Pandas
  46. Очистка списка от False, None, 0, «»
  47. Преобразование чисел в восьмеричную строку
  48. Методы split() и join() — Python строк.

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