我有一个函数fun
和对象args
和kwargs
,我想获得fun
中可用的参数和值的字典我称之为fun(*args, **kwargs)
(实际上没有调用fun
)。换句话说,我需要将args
的元素绑定到参数名称,并使用默认值填充args
和kwargs
中缺少的参数
在Python 3.3中有一个inspect.signature
可以提供帮助,但是我在Python 2.7中工作,是否有人指向可以在2.7中执行此任务的代码?
答案 0 :(得分:3)
新的PEP 362 Function Signature Object功能已被移植到2.7 funcsigs
project:
try:
from inspect import signature
except ImportError:
from funcsigs import signature
sig = signature(yourfunction)
boundargs = sig.bind(*args, **kwargs)