Biorąc pod uwagę funkcjęIntrospekcja zagnieżdżonych (lokalne) funkcji pełnionej funkcji w Pythonie
def f():
x, y = 1, 2
def get():
print 'get'
def post():
print 'post'
jest jakiś sposób dla mnie, aby uzyskać dostęp do jego lokalnego get() i słupek() funkcji w taki sposób, że można je nazwać ? Szukam funkcji, która będzie działać tak jak z funkcji f() zdefiniowanej powyżej:
>>> get, post = get_local_functions(f)
>>> get()
'get'
mogę uzyskać dostęp do kodu obiektów dla tych lokalnych funkcji jak tak
import inspect
for c in f.func_code.co_consts:
if inspect.iscode(c):
print c.co_name, c
co skutkuje
get <code object get at 0x26e78 ...>
post <code object post at 0x269f8 ...>
, ale nie mogę dowiedzieć się, jak uzyskać rzeczywiste obiekty funkcji wywołania. Czy to w ogóle jest możliwe?
Dzięki za pomoc,
Will.
Należy zauważyć, że na moim konkretnym przypadku zastosowania, muszę być w stanie wywołać lokalne/zagnieżdżone funkcje tak: Get (żądania, * args, ** kwargs) –