您的位置:首页 > 编程语言 > Python开发

python中的含有 *args 和**kwargs的用法 作为参数的函数,参数输入问题

2015-11-27 16:56 841 查看
*args 可以当作可容纳多个变量组成的list或tuple

**kwargs 可以当作容纳多个key和value的dictionary

在python 研发中经常定义、使用 *args 、**kwargs 作为参数的函数,虽然知道需要 元组或字典类型参数,但只会 使用 手动输入两种类型参数的方式, 但当想用传递过来的 list、tuple、dict类型的变量作为函数参数时,直接传入会报错,开始没办法把 整个函数和参数 处理程符合要求的字符串,然后用eval 执行。

但始终认为有能够直接传做参数的办法,但始终未果! 今天得获,分享至此,顺便留存。

变量及函数定义:

dc_dict={'d':56,'c':99}
tl_tuple=('aa','bb')
tl_list=['aa','bb']

def tlist(*tl):
print(tl)

def ddict(**dc):
print(dc)


使用方法:

tlist(*tl_list)

tlist(*tl_tuple)

ddict(**dc_dict)


使用eval的方式就不在此罗列了,汗颜!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: