print(foo.namename) # Однако, декораторы мешают нормальному ходу дел: def bar(func): def wrapper(): print("bar") return func() return wrapper
@bar def foo(): print("foo")
print(foo.namename) import functools # "functools" может нам с этим помочь def bar(func): # Объявляем "wrapper" оборачивающим "func" # и запускаем магию: @functools.wraps(func) def wrapper(): print("bar") return func() return wrapper