一、函数的参数
1、位置参数(一般未知数)
def power(x,n): 求x的n次方
2、默认参数
将某个参数默认为一个值
def power(x,n=3):
默认n为3,可不用填
power(x)
n不为3
power(x,n=4)
参数更多
必选参数在前,默认参数在后
def power(name,gender,age,city):
name,gender为必选
可将age,city设为默认
power('m'.'m',7)
power('m','m',city='shanghai')
后面的默认参数需要写上参数名
注:默认参数最大的坑
当默认参数是变量的时候,如果改变了其内容,就不是函数定义时候的了,必须指向不变对象
3、可变参数
参数个数可变——传进一个list或tuple进去
def calc(*numbers): 改为可变参数
如果已有一个list或tuple调用
nums =[1,2,3]
calc(*nums)
4、关键字参数
可以扩展函数功能,如果 调用者愿意提供更多参数,我们也能收到。
相当于附加信息(选填)
可以先组装出一个dict,再转化为关键字参数传进去
extra={'city':'beijing','job':'engineer'}
person('jack',27,city=extra['city'],job=extra['job'])
或person('jack',27,**extra)
将dict中的所有key-value用关键词参数传入
5、命名关键字参数
检查参数
if 'city' in kw:
pass
限制关键字参数的名字,特殊分隔符后的视为命名关键字参数
def person(name,age,,city,job)
print(name,age,city,job)
有可变参数,后面的命名关键字不需要*号
命名关键字参数必须写参数名
6、参数组合
顺序:必选,默认,可变,明明关键字,关键字
网友评论