Загрузка...

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

  • Нормальная
  • Бонус
    10
  • Не решено

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

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

Пример

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

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