python函数2.0

作者: 小灰灰233 | 来源:发表于2017-05-07 21:02 被阅读0次

一、函数的参数

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、参数组合

顺序:必选,默认,可变,明明关键字,关键字

相关文章

网友评论

    本文标题:python函数2.0

    本文链接:https://www.haomeiwen.com/subject/vkautxtx.html