Курс 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. Работа с массивами в Python
  2. Проверка вхождения подстроки
  3. Преобразование символов в нижний регистр
  4. Разделение строки с регулярными выражениями
  5. Оператор обр. импликации
  6. Удаление элемента по индексу
  7. Преобразование данных в Python
  8. Открытие и редактирование скриптов Python
  9. Очистка строки в Python
  10. Создание вложенного генератора
  11. Измерение времени выполнения кода
  12. Установка виртуального окружения Python
  13. Измерение времени выполнения кода
  14. Структура данных deque в Python
  15. Нахождение хеша для бесконечности и NaN в Python
  16. Декораторы в Python
  17. Изучение объектов с помощью dir()
  18. Конструктор в Python
  19. Обработка ошибок в Python
  20. Установка и загрузка Instaloader
  21. Область видимости переменных
  22. Удаление элементов по срезу
  23. Списки: объединение, изменение
  24. Получение текущей даты в Python
  25. Группы исключений в Python
  26. Просмотр атрибутов и методов класса
  27. Просмотр внешнего файла в Python
  28. Управление асинхронными задачами на Python.
  29. Глубокое копирование объектов
  30. Обработка элементов в Python
  31. Поиск уникальных и повторяющихся элементов
  32. Функции range() в Python
  33. Установка максимального количества цифр
  34. Генерация ключей RSA
  35. Функции map, filter и reduce
  36. Строки в Python: апострофы и кавычки
  37. Модуль subprocess: запуск внешних команд
  38. Объединение словарей в Python
  39. Область видимости переменных
  40. Переопределение метода __floordiv__
  41. Разделение строк методом split()
  42. Метод append() для списка
  43. Безопасные SQL-запросы в Python 3.11
  44. Профилирование данных с Pandas.
  45. Оператор «or» в Python
  46. Работа со словарями в Python
  47. Установка Python — Простое руководство

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