Найти тему
Future People

Что такое *args в Python

*args в Python - это способ в функции обрабатывать произвольное количество аргументов. Эти аргументы передаются как кортеж, что позволяет функции принимать более гибкое количество аргументов.

Есть функция hello, которая принимает список с именами, проходит по нему циклом и каждого приветствует.

Hello, Max! 
Hello, Jane!
Hello, Tom!
Hello, Max! Hello, Jane! Hello, Tom!

Работает.
Но что если мы не хотим записывать имена в список, а хотим сразу же подавать их в функцию в виде аргументов? Подадим имена в вызове функции через запятую и воспользуемся * для запаковки аргументов в кортеж.

Hello, Max! 
Hello, Jane!
Hello, Tom!
Hello, Max! Hello, Jane! Hello, Tom!

Запускаем.

Как это сработало?

При вызове функции hello оператор * дал команду на запаковку, собрал все переданные аргументы в кортеж и присвоил этот кортеж переменной args.

Ну а дальше цикл начал итерироваться по полученному кортежу. Стоит отметить, что переменную, которая используется для запаковки принято называть args, сокращенно от arguments (аргументы).

Hello, Max!  
Hello, Jane!
Hello, Tom!
Hello, Max! Hello, Jane! Hello, Tom!

Если вы интересуетесь программированием, то напоминаю о нашем курсе по основам программирования Python [START]. В нем много анимации, примеров и разборов домашних заданий. Присоединяйтесь! Ссылка:

Онлайн-курс Python START

ВИДЕО:

Что такое *args ? #python