Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior
8
Типизированный декоратор с параметрами
Условие задачи
Напиши типизированный декоратор с параметрами. Такой, что он добавляет аргумент к декорируемой функции. Пример:
python
from threading import Lock
my_lock = Lock()
@locked(my_lock)
def function1(lock: Lock, arg: int) -> int:
return arg + 1
@locked(my_lock)
def function2(lock: Lock, name: str, surname: str) -> str:
return name + surname
# Внутри 'locked' выполняется примерно такой код:
# python
# with passed_lock:
# return function(passed_lock, *args, **kwargs)
# Вопрос со звёздочкой: как из него сделать и декоратор, и контекстный менеджер?
# Вопрос со звёздочкой: как из него сделать и декоратор, и контекстный менеджер?
# Вопрос со звёздочкой: как из него сделать и декоратор, и контекстный менеджер?
def locked(): # TOOO