Курс 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. Проверка типов с использованием isinstance
  2. Реверс строки и списка в Python.
  3. Работа с CSV файлами в Python
  4. Класс Counter() для подсчета элементов
  5. Добавление элементов в список
  6. Преобразование числа в список цифр
  7. Работа с рекламными данными в Pandas
  8. Работа со строками в Python.
  9. Разработка Telegram-ботов
  10. Профилирование с Pandas
  11. Списковое включение в Python
  12. Строковое представление объектов
  13. Сравнение объектов в Python
  14. Логические операторы в Python
  15. Метод join() для объединения строк
  16. Конкатенация строк с помощью join()
  17. Фильтрация элементов с помощью islice
  18. Проверка на палиндром
  19. Работа со словарями с defaultdict из collections
  20. Открытие и редактирование скриптов Python
  21. Обход элементов в Python
  22. Функции высшего порядка в Python
  23. Методы shutil для работы с файлами
  24. Применение команды break
  25. Имена объектов в Python
  26. Извлечение аудио из видео
  27. Объединение строк с помощью метода join
  28. Функция reversed() в Python
  29. Декоратор Ajax required
  30. Создание пустых функций и классов в Python
  31. Подсчет элементов в списке с Counter
  32. Методы Python для работы с данными
  33. Синхронизация доступа к ресурсам
  34. Фильтрация списка чисел
  35. Переворот списка в Python
  36. Добавление цвета в консоли
  37. Комментарии в Python
  38. Python Метод Union Множеств
  39. Управление виртуальными средами в Python
  40. Метод matmul для умножения матриц
  41. Python Calendar Usage
  42. Перехват исключений в Python
  43. Нарезка списков в Python
  44. Объединение словарей в Python
  45. Python Enum Weekday Usage

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