day4_python多值参数

可变参数 也叫 多值参数

*args 会把所有的 非键值对(位置参数) 参数吸收 变为一个 元组

**kwargs 会把所有的 键值对 参数吸收 变为一个 字典

def demo1(*args, **kwargs):
    print(args)
    print(kwargs)

# *args 会把2, 3, 4, 5 变为一个元组
# **kwargs 会把name="小明", age=23 变为一个字典
def demo(num, *args, **kwargs):
    print(num) # 会把第一个参数1 吸收
    print(args)
    print(kwargs)

    # 如果直接传args,kwargs会直接当作 位置参数传进去
    # demo1(args,kwargs) # 运算结果如下
    # ((2, 3, 4, 5), {'name': '小明', 'age': 23})
    # {}
	
	# 解包为 位置参数 和 键值对
    demo1(*args, **kwargs)  # 效果和demo一样

demo(1, 2, 3, 4, 5, name="小明", age=23)

在元组前加 * 就是解包(unpack),效果就是把一个 元组 里面的内容变为位置参数 (1,2,3)=>1,2,3

在字典前加 ** 也是解包(unpack),效果就是把一个 字典 里面的内容变为键值对的形式 {“name”:“小明”}=>name=“小明”

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值