python语言之参数args与kwargs介绍

描述

*args: 看例子及注释

# *: 输入的是位置参数,例如: 1,2 , 输出的是元组(1,2)
def args(*args):
return args

def test_args():
v = args()
assert () == v, 'args 空参数错误'

v = args(1, 2)
assert (1, 2) == v, 'args 1 tuple error'

params = (1, )
# *: 输入的是序列, 输出的是位置参数, 1,2,
v = args(*params)
assert (1, ) == v, 'args 1 tuple error'

params = (1, 2, 3)
v = args(*params)
assert (1, 2, 3) == v, 'args 3 tuple error'

params = [1, 2, 3]
v = args(*params)
assert (1, 2, 3) == v, 'args 3 list error'

# set 也可以用set((1,2,3))初始化
params = {1, 2, 3}
v = args(*params)
assert (1, 2, 3) == v, 'args 3 set error'

params = range(1, 4)
v = args(*params)
assert (1, 2, 3) == v, 'args range(1,4) error'

params = 'a'
v = args(*params)
assert ('a', ) == v, 'args 1 str error'

params = 'a', 'b'
v = args(*params)
assert ('a', 'b') == v, 'args 1 str error'

2.**kwargs: 看例子及注释

# **输入的是命名位置参数,例如: a=1,b=2 , 输出的是字典{'a':1,'b':2}
def kwargs(**kwargs):
return kwargs

def test_kwargs():
v = kwargs()
assert {} == v, 'kwargs 空参错误'

v = kwargs(a=1, b=2)
assert {'a': 1, 'b': 2} == v, 'kwargs 传a=1格式错误'

param = {'a': 1, 'b': 2}
# **: 输入的是字典, 输出的是命名位置参数: a=1,b=2
v = kwargs(**param)
assert {'a': 1, 'b': 2} == v, 'kwargs 传字典错误'



审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分