码迷,mamicode.com
首页 > 其他好文 > 详细

*args和**kwargs用法

时间:2019-10-10 22:25:31      阅读:99      评论:0      收藏:0      [点我收藏+]

标签:numa   符号   tuple   替换   span   函数定义   enumerate   mat   rate   

def func(*args):
    # just use "*" to collect all remaining arguments into a tuple
    # 这里的*是关键符号,args可以替换为其他命名
    # 更一般的函数定义方式是def fun(*args,**kwargs),可以在许多Python源码中发现这种定义,
    # 其中*args表示任何多个无名参数,它本质是一个元组tuple;
    # **kwargs表示关键字参数,它本质上是一个字典dict。
    numargs = len(args)
    print (
        "参数数量: {0}".format(numargs)
    )
    for i, x in enumerate(args):
        print (
            "参数 {0} 是: {1}".format(i, x)   
        ) 

func(a,b,c)
func((a,b,c))
func([1,2,3])

‘‘‘
执行结果如下
参数数量: 3
参数 0 是: a
参数 1 是: b
参数 2 是: c
参数数量: 1
参数 0 是: (‘a‘, ‘b‘, ‘c‘)
参数数量: 1
参数 0 是: [‘1‘, ‘2‘, ‘3‘]
‘‘‘

 

*args和**kwargs用法

标签:numa   符号   tuple   替换   span   函数定义   enumerate   mat   rate   

原文地址:https://www.cnblogs.com/feng-hao/p/11650685.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!