在参数中,除了可变参数中的个数是动态变化的,还有一个跟它相似的参数,有小伙伴们学到了这个知识点吗?这个参数的名字也很好记,叫关键词参数,当然这也是它的简称,想知道全称的小伙伴一定要继续往下看。既然参数的个数都是可变的,那么两个参数有什么区别呢?下面我们从基本的关键字参数中寻找答案。
关键字参数和可变参数类似,参数的个数都是可变的,所以也常被称作可变关键字参数,但是和可变参数的区别在于关键字参数在调用的时候会被组装成一个字典 dict ,而且参数是带参数名的,关键字参数在定义的时候用两个符号 ** 表示,和可变参数差不多,看下下面的具体代码就行。
#关键字参数 def keyWordParams(**params): print(params) #关键字参数会被组装成一个字典dict dict = {'a':6,'b':3} keyWordParams(a=6,b=3) keyWordParams(**dict) #如果已经存在了一个dict,可以使用**来把参数当做关键字参数传入
{'a': 6, 'b': 3} {'a': 6, 'b': 3}
Python传参限制
Python实参分为两类:positional argument(定位参数)和keyword argument(关键字参数),在传参时要保证positional argument在keyword argument之前。例如:
def func(x, y, z): pass func(1, y=2, z=3) # 正确传参 func(x=1, y=2, 3) # SyntaxError: positional argument follows keyword argument func(1, y=2, 3) # SyntaxError: positional argument follows keyword argument
以上就是python中关键字参数的一些基本用法,在参数上和可变参数是一样可以变化的,不过用法上是不同的,比可变参数多了一个*,学会了的小伙伴赶紧尝试下吧。