【python】 *args和**kwargs参数

【python】 *args和**kwargs参数

*args和**kwargs参数

参数不确定时,使用*args。将参数打包成元组形式传递给函数使用。

# test.py内容如下
def function(x, y, *args):
    print(x)
    print(type(x))
    print(y)
    print(type(y))
    print(args)
    print(type(args))

function(1, "a", [1,2,3], {1:"a",2:"b"},(1,2,3))
# 运行test.py,打印结果如下
1
<type 'int'>
a
<type 'str'>
([1, 2, 3], {1: 'a', 2: 'b'}, (1, 2, 3))
<type 'tuple'>
# 使用*args时,参数不能带key值,否则报错

参数不确定时,使用**kwargs。与*args不同的是,这里参数必须带key值,并将参数打包成字典形式传递给函数使用。

# test.py内容如下
def function(x, y, **kwargs):
    print(x)
    print(type(x))
    print(y)
    print(type(y))
    print(kwargs)
    print(type(kwargs))
    print(kwargs["key1"])

function(1, "a", key1 = [1,2,3], key2 = {1:"a",2:"b"}, key3 = (1,2,3))
# 运行test.py,打印结果如下
1
<type 'int'>
a
<type 'str'>
{'key3': (1, 2, 3), 'key2': {1: 'a', 2: 'b'}, 'key1': [1, 2, 3]}
<type 'dict'>
[1, 2, 3]
# 使用**kwargs时,参数必须带key值,没有key值会报错

结语

如果您有修改意见或问题,欢迎留言或者通过邮箱和我联系。
手打很辛苦,如果我的文章对您有帮助,转载请注明出处。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值