问题:
如何在函数的外部获取到一个函数的命名空间呢? python有提供这个机制吗
如:
# coding: utf8
from functools import wraps
def test_wrapper(func):
@
wraps(func)
def wrapper(*args, **kwargs):
# get func namespace
# namespace = {'u': 1} 怎么取到这个
print args
print kwargs
return func(*args, **kwargs)
return wrapper
@
test_wrapperdef test(u):
print 'I am test \n'
if __name__ == '__main__':
test(1) # 非关键字调用 只能传到args中, 怎么取到字典的形式呢
test(u=12) # 这样调用可以在kwargs中取到
输出:
(1,)
{}
I am test
()
{'u': 12}
I am test