python 参数匹配规则
来源:互联网 发布:淘宝店开店流程费用 编辑:程序博客网 时间:2024/06/07 23:43
不常用到参数匹配的全部功能,容易忘掉,做个笔记总结一下,备查:
参数匹配模型:位置参数,关键字参数,默认参数,可变参数(字符 * )开头,可变参数解包,Keyword-only 参数
函数调用时:
func(value),
func(name=value),
func(*sequence), 调用过程中解包为分开的,单个的参数
func(**dict), 调用过程中解包为分开的,单个的参数
函数定义时:
def func(name), 基于位置或者变量名
def func(name=value), 默认参数值
def func(*name), 收集任意的额外不匹配的参数到元组中,
def func(**name), 收集任意的额外不匹配的参数到字典中,
def func(*args, name), *args 之后的 name 参数就是 Keyword-only 参数,必须在调用中按照关键字传递
def func(*, name=value), ( python 3.0 ), * 之后的 name 参数就是 keyword-only 参数,必须在调用中按照关键字传递
函数调用中,参数必须以下列顺序出现:位置参数,关键字参数和 *sequence 形式组合,**dict 形式参数
函数定义时,参数必须以下列顺序出现:一般参数,默认参数,*name 或者 * 形式参数, name 或者 name=value keyword-only 参数, **name 形式参数
所以,不论是在函数调用中,还是在函数定义中,**arg 形式参数都必须出现在最后
Python 内部的参数匹配规则:
1. 通过位置分配非关键字参数;
2. 匹配关键字参数;
3. 其他额外的非关键字参数分配到 * name 元组中
4. 其他额外的关键字参数分配到 **name 字典中
5. 用默认值分配给在头部未得到分配的参数
- python 参数匹配规则
- python参数规则
- Python正则匹配 -> 基本规则
- Python中的参数匹配
- 函数参数一:传递与匹配规则
- python函数参数传递规则
- Python中正则表达式的匹配规则
- python 函数参数传递和参数匹配
- python 函数调用参数传递规则
- python函数匹配任意数目的参数
- python(第三天):参数匹配类型
- Python函数非匹配参数类型传递
- python-正则表达式 匹配多个字符串的语法规则
- Python的变量赋值及函数参数传递规则
- Android-->intent-filter 过滤规则的匹配 (Activity通过Uri传递参数)
- 正则表达式匹配规则
- 正则表达式匹配规则
- 正则表达式匹配规则
- 单例模式三种实现----饿汉式 饱汉式(懒汉式) 双重锁模式--------(java复习)
- 最小度限制生成树
- matlab2c使用c++实现matlab函数系列教程-circshift函数
- GDB笔记(二):条件断点、命令列表、监视点
- PL/SQL 到期无法使用怎么办
- python 参数匹配规则
- java 使用数组实现栈
- 【algorithm】字符串操作
- 苹果首批ARKit应用展示:或随iOS 11一起亮相
- TensorFlow——CPU 安装在windows出现问题
- JVM垃圾回收机制
- uart硬件一些小知识
- android 通过schema唤起应用指定页面
- cacti---安装spine轮询