Python inspect模块参数类型kind的整理
2018-02-06 11:04
281 查看
名称 | 含义 |
---|---|
POSITIONAL_ONLY | 必须为位置参数,python没有明确定义位置参数的语法 |
POSITIONAL_OR_KEYWORD | 可以为位置参数或者关键字参数 |
VAR_POSITIONAL | 位置参数的元素没有绑定到任何其他参数,对应python函数定义中的*args(可变参数) |
KEYWORD_ONLY | 值必须作为关键字参数提供,只有关键字参数是指出现在*或者 *args之后的参数(命名关键字参数) |
VAR_KEYWORD | 没有绑定到任何其他参数的关键字参数的字典,对应参数定义的**kwargs(关键字参数) |
import inspect def foo(a, b, *args,c, **kwargs): pass sig = inspect.signature(foo) for name, param in sig.parameters.items(): print('参数:%s的类型为:%s' % (name, param.kind))
输出结果如下:
参数:a的类型为:POSITIONAL_OR_KEYWORD 参数:b的类型为:POSITIONAL_OR_KEYWORD 参数:args的类型为:VAR_POSITIONAL 参数:c的类型为:KEYWORD_ONLY 参数:kwargs的类型为:VAR_KEYWORD
相关文章推荐
- python模块整理24-Optparse选项参数
- Python函数参数类型*、**的区别
- Python: 通过Inspect模块获取函数上下文信息.
- Python方法的几种常见参数类型
- python模块整理5-time模块
- python模块整理8-glob(类似grep)和fnmatch(匹配文件名)
- python random模块整理
- python random模块整理
- python调用c函数参数类型问题
- python —— 参数类型
- python模块整理17-mail-smtplib
- 整理的Python3数据类型
- Python之inspect模块实现获取加载模块路径
- [python]学习笔记5-函数参数类型
- python函数参数类型校验
- python-地址值判断、可变不可变类型、+=含义、global使用、缺省、不定长参数
- python3的数据类型以及模块的含义
- Python模块整理(二):时间相关模块time
- python模块整理10-xml.dom.minidom模块
- Python 使用__call__动态修改参数类型