Основы Python

Теория: Функции с переменным числом параметров

У некоторых функций есть особенность — они принимают переменное число аргументов. Это не связано со значениями по умолчанию, как в случае с round(). Речь идёт о том, что количество передаваемых данных не ограничено фиксированным числом.

Рассмотрим функцию max(). Она находит наибольшее значение из переданных данных.

print(max(1, 10, 3))       # => 10
print(max(1, -3, 2, 3, 2)) # => 3

В документации можно встретить несколько вариантов описания max(). Чтобы упростить понимание, сосредоточимся на одном, который нам сейчас нужен:

max(arg1, arg2, /, *args, key=None)

Это значит:

  • функция требует как минимум два значения (arg1 и arg2);
  • дальше можно передавать ещё сколько угодно значений (*args);
  • функция вернёт наибольшее из переданных.

Если среди аргументов есть несколько одинаковых максимальных значений, возвращается первый из них.

print(max(5, 5, 2))  # => 5

Аналогично работает функция min(), только она ищет наименьшее значение:

print(min(1, 10, 3))       # => 1
print(min(1, -3, 2, 3, 2)) # => -3

Рекомендуемые программы