Если бы я хотел использовать декоратор следующим образом:Получение функции, определенная в функции с помощью декоратора
@getFunc('bar')
def foo():
def bar():
print 'bar'
Как бы я сделать декоратор получить внутреннюю функцию с именем бар?
def getFunc(str)
def getFunc_inner(func):
def new(*args, **kwargs):
func(*args, **kwargs)
myFunc = ??# Get function named {str} from func
return new
return getFunc_inner
Я думаю, что один из способов будет использовать '' inspect' и ast' модули. –
короткий ответ: вы не можете – alko
Возможный дубликат [Как получить/установить локальные переменные функции (извне) в Python?] (Http://stackoverflow.com/questions/1360721/how-to-get- set-local-variables-of-a-function-from-outside-in-python) – alko