Найти тему
9848 подписчиков

🖥 Декоратор для контроля уникальности аргументов


Напишите декоратор RepeatDecorator, который проверяет, запускалась ли ранее обернутая функция с заданными позиционными аргументами. Если такие аргументы уже подавались на вход данной функции, то нужно вывести на экран сообщение: «Функция с такими аргументами уже запускалась!».

Примечание: Если одна функция запускалась с заданными аргументами, а потом другая запускается с теми же аргументами, то декоратор не должен выводить сообщение.

Пример:

func1(1, 2)
> Ничего не выводится
func1(2, 1)
> Ничего не выводится
func1(3, 1)
> Ничего не выводится
func1(1, 2)
# Функция с такими аргументами уже запускалась!

func2(1, 2)
> Ничего не выводится, т.к. функция другая
func2(1, 2)
# Функция с такими аргументами уже запускалась!

Пишите свое решение в комментариях👇

Около минуты
296 читали