*每天都有新体验
可变参数和关键字参数
可变参数:
对于需要多个参数的函数,可以使用可变参数
1
2
3
4
5
6
7
8
9
|
def calc(*number):
sum = 0
for n in number:
sum=sum+n
return sum
calc(2,3,4)
or
list_test=[1,2,3]
clac(*list_test)
|
可变参数还是很好理解的,这些参数在函数调用时自动组装成了一个元组。
关键字参数
关键字参数允许你传入任意个含有参数名的参数。这些参数自动组装为一个字典。
1
2
3
4
5
|
def person(name,age,**kw):
print(name,age,kw)
person('bob',14,city='beijing')
#out
name: Bob age: 14 other: {'city': 'Beijing'}
|
命名关键字参数
如果要限制关键字参数的名字,可以用命名关键字参数。如
1
2
|
def person(name,age,*,city,job):
print(name,age,city,job)
|
命名关键字是要用一个特殊分隔符的。
1
2
|
>>> person('Jack', 24, city='Beijing', job='Engineer')
Jack 24 Beijing Engineer
|
命名关键字必须传入。
参数顺序
必选参数,默认参数,可变参数,关键字参数,明明关键字参数可以组合使用,但是要遵循一定的规律
顺序就是如上的顺序。