python inspect 检查运行模块

inspect.getargspec(func)

返回 func 的默认参数信息,以元祖形式返回 (args, varargs, keywords, defaults)。args 是参数列表,varargs 和 keywords 是 * 和 ** 参数名或 None,defaults 是参数默认值或 None 的元祖,返回 args list 后面几个元素的值。

1
2
3
4
5
6
7
8
import inspect
def (name, age, address=None):
... pass
...
inspect.getargspec(test)
__main__:1: DeprecationWarning: inspect.getargspec() is deprecated since Python 3.0, use inspect.signature() or inspect.getfullargspec()
ArgSpec(args=['name', 'age', 'address'], varargs=None, keywords=None, defaults=(None,))
>>>
1
2
3
4
5
6
params = {'name': 'bob', 'age': 12, 'address': 'bj','as':'ccc'}
key_list = inspect.getargspec(test)[0]
>>> params = {k:params[k] for k in key_list}
>>> params
{'name': 'bob', 'age': 12, 'address': 'bj'}
>>>