函数
2020-06-19 本文已影响0人
嘿嘿_信我者得永生
参数
- 定义默认参数要牢记一点:默认参数必须指向不变对象!
def add_end(L=[]):
L.append('END')
return L
def add_end(L=None):
if L is None:
L = []
L.append('END')
return L
第一个方法多次调用会导致参数被改变,第二个方法才可以多次调用而不变
- 可变参数
def calc(*numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
calc(1,2,3,6,4)
- 关键字参数
def person(name, age, **kw):
print('name:', name, 'age:', age, 'other:', kw)
- 命名关键字参数
def person(name, age, *, city, job):
print(name, age, city, job)
##如果有中间有可变参数,可以省略*符号
def person(name, age, *args, city, job):
print(name, age, args, city, job)
也就是只能这样调用:person('xiaowang',32,city='北京',job='啦啦')
可变参数后面的参数必须命名
- 参数组合
在Python中定义函数,可以用必选参数、默认参数、可变参数、关键字参数和命名关键字参数,这5种参数都可以组合使用。但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数、命名关键字参数和关键字参数。