python学习三十六(关键字参数和默认值参数)

文章目录

关键字参数

关键字参数:key=value

1.当有一个可变参数加一个关键字参数时

def add(a,b=9):
    result = a+b
    print(result)


add(1)
add(1,2)#此时2会覆盖原来b的默认值

结果为:

10
3

2.当函数带一个可变参数和两个关键字参数时,可以结合关键字来调用函数

def add(a,b=9,c=1):
    print(a,b,c)
    result = a+b+c
    print(result)


add(1)
add(1,2)#此时2会覆盖原来b的默认值
add(1,2,3)
#如果不想改b的值,只想改c的值,可以结合关键字的key的使用。
add(2,c=7

结果为

1 9 1
11
1 2 1
4
1 2 3
6
student={'001':('蔡徐坤',20),'002':('王源',19),'003':('王俊凯',21),'004':('易烊千玺',20)}
def print_boy(name,persons):
        if isinstance(persons,dict):#如果persons是一个字典,则执行以下代码
            values=persons.values()
            print(values)
            for names,age in values:
                if name == names:
                     print('{}的年龄是{}'.format(name,age))



print_boy('蔡徐坤',student)

结果为

dict_values([('蔡徐坤', 20), ('王源', 19), ('王俊凯', 21), ('易烊千玺', 20)])
蔡徐坤的年龄是20

3.使用字典时可以用**kwargs(关键字参数)只要有两颗星,只要外面给的函数送值,送的值的类型必须是key=value的形式

def func(**kwargs):#key word argument
    print(kwargs)


#在调用时定义
func(a=1,b=2,c=3)#关键字参数

结果为

{'a': 1, 'b': 2, 'c': 3}

当调用关键字参数为字典时,需要在参数前面加上**,如下:

def func(**kwargs):#key word argument
    print(kwargs)


#在调用时定义
dict1={'001':'python','002':'java','003':"c"}
func(**dict1)
#**dict1:给函数赋值的时候船体实参:**变量名,将字典进行:拆包。
变成:func(001=python,002=java...)

结果为

{'001': 'python', '002': 'java', '003': 'c'}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值