@Mokol

Почему не выводится результат работы функции, которая находится в декораторе?

def decorator(func):
    def wrapper():
        print('before main')
        func()
        print('after main')
    return wrapper

def make_list():
    l = [x for x in range(10)]
    return l

decorator(make_list)()


Подскажите, пожалуйста, почему при запуске получаем вывод без результата работы func() :
before main
after main
  • Вопрос задан
  • 111 просмотров
Пригласить эксперта
Ответы на вопрос 2
@zyusifov11
попробуйreturn wrapper()
Ответ написан
Комментировать
@galaxy
def decorator(func):
    def wrapper():
        print('before main')
        res = func()
        print('after main')
        return res
    return wrapper
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы