关于inspect模块(Python)

来源:互联网 发布:红蜘蛛软件安装 编辑:程序博客网 时间:2024/06/06 08:37
import inspectdef foo(a, b=2, *,c, d=10,**kw):    passsig = inspect.signature(foo)print(sig)print(type(sig))for name,param in sig.parameters.items():    print(name,'%s:'%param, param.kind)    print(str(param.kind) == 'KEYWORD_ONLY')    print(name,'%s:'%param, param.empty)    print(name,'%s:'%param, param.default)

结果:

(a, b=2, *, c, d=10, **kw)<class 'inspect.Signature'>a a: POSITIONAL_OR_KEYWORDFalsea a: <class 'inspect._empty'>a a: <class 'inspect._empty'>b b=2: POSITIONAL_OR_KEYWORDFalseb b=2: <class 'inspect._empty'>b b=2: 2c c: KEYWORD_ONLYTruec c: <class 'inspect._empty'>c c: <class 'inspect._empty'>d d=10: KEYWORD_ONLYTrued d=10: <class 'inspect._empty'>d d=10: 10kw **kw: VAR_KEYWORDFalsekw **kw: <class 'inspect._empty'>kw **kw: <class 'inspect._empty'>
原创粉丝点击