Мне нужно функцию выполнять именно как работает функция, вы не поняли же measure(w(12, "\n"))
А по математике не проходили ещё тему про порядок выполнения операций в выражениях со скобками? Сам может догадаешься, что у тебя выполнится раньше в твоём коде: w или mesure.
А как этого избежать, но при этом оставить вид функции такой какая она есть?
Мне ведь нужно измерять выполнение уже готового кода без танцев с его редактированием
Сделать или декоратор, или контекстый менеджер. Зависит от того какой именно код тебе проще редактировать: код определения функции или код в котором она вызывается. Декоратором будет использоваться вот так: @mesure def w(x, y): .... менеджер вот так: with mesure(): w(12, "\n")
Декоратор я ему уже кидал
measure() missing 1 required positional argument: 'code'
Ой, ёлки - загугли уже ответ. Это же популярная задачка для собеседований - написать декоратор для измерения времени работы функции.
Я только пару месяцев в питноне))
Как часто приходится писать декоратор из головы?
когда например не хочешь lru_cache, и пишешь свой кешер
А уже пишешь python developer
Ну с такими вопросами лучше в чат Python Beginers 😊
Обсуждают сегодня