def same(*args):
if not all(isinstance(x, int) and x >= 0 for x in args):
raise ValueError("Input arguments must be non-negative integers"
return all(x == args[0] for x in args)
Вот пример реализации функции same(): def same(*args):
if len(args) < 2:
return True
else:
first = args[0]
for arg in args[1:]:
if arg != first:
return False
return True
Как это работает:
Функция принимает произвольное количество аргументов, указанных с помощью звездочки (*args).
Если количество аргументов меньше 2, то функция сразу возвращает True, потому что при одном числе оно всегда одинаковое.
В противном случае мы сохраняем первый аргумент в переменной first и проверяем каждый оставшийся аргумент на равенство с первым. Если хотя бы одно число отличается от первого, то функция сразу возвращает False.
Если все числа равны, то функция возвращает True.
Например: >>> same(1, 1, 1, 1)
True
>>> same(1, 2, 1, 1)
False
>>> same(3)
True