Курс Python → Работа с *args и **kwargs в Python
*args и **kwargs — это специальные конструкции в Python, которые позволяют обрабатывать произвольное количество аргументов в функции. Иногда бывает сложно заранее определить, сколько аргументов может быть передано в функцию, поэтому *args и **kwargs становятся удобным способом работы с переменным количеством аргументов.
Переменные args и kwargs — это всего лишь соглашения в Python. Главное здесь — это звездочки, которые обозначают сборку аргументов в коллекцию. Одна звездочка перед переменной args позволяет собрать все неименованные аргументы в кортеж, в то время как две звездочки перед переменной kwargs собирают все именованные аргументы в словарь.
def example_function(*args, **kwargs):
for arg in args:
print(arg)
for key, value in kwargs.items():
print(f"{key}: {value}")
example_function(1, 2, 3, name='Alice', age=30)
В приведенном выше примере функции example_function мы используем *args для работы с неименованными аргументами и **kwargs для работы с именованными аргументами. При вызове функции мы передаем числовые значения в качестве неименованных аргументов и пары ключ-значение для именованных аргументов. Функция выводит все переданные аргументы на экран.
Использование *args и **kwargs делает код более гибким и удобным для работы с различными входными данными. Они позволяют упростить написание функций, которые могут принимать переменное количество аргументов, что делает ваш код более масштабируемым и удобным в использовании.
Другие уроки курса "Python"
- Установка Python3.7 и PIP
- Python union() функция — объединение множеств
- Разделение строки в Python
- Удаление дубликатов с помощью множеств
- Измерение времени выполнения кода
- Функция reduce() в Python
- Метод setdefault() в Python
- Создание списков в Python
- Роль запятой в Python
- Функция enumerate() — Python
- Оператор «and» в Python
- Замена символов в Python
- Аннотации типов в Python
- Функция format() в Python
- Выражения-генераторы в Python
- Объединение словарей в Python
- Игра «Угадывание чисел»
- Анализ кода — Python
- Работа с Event() в threading
- Замена текста в Python
- Перевод двоичного кода в целое число
- Оператор += для объединения строк
- Искажение имен в Python
- Создание итерируемых объектов
- Ограничение итераций в Python
- Модуль itertools: комбинации и перестановки
- Сравнение строк в Python
- Выборка чисел
- Работа с итераторами в Python
- discard() — удаление элемента из множества
- Логирование в Python
- Декоратор Property в Python
- Функция enumerate() в Python
- Оптимизация памяти с slots
- Оператор del в Python
- Обход элементов в Python
- Функция map() и ленивая оценка
- Декораторы с @wraps
- Генерация чисел с range()
- Функция с *args.
- Подсчет элементов с помощью Counter















