服务器之家

服务器之家 > 正文

Python编程中*args与**kwargs区别作用详解

时间:2022-01-26 10:44     来源/作者:qq_1170407931

相信学Python的小伙伴肯定有这样的尴尬局面,给一个函数不会用,

原因是:不知道参数列表中的类型是什么意思,比如初学者都会疑问的:*args和**kwargs到底是怎么用。

当你知道这个时,我猜你肯定能会用好多函数了!

#*args的用法:当传入的参数个数未知,且不需要知道参数名称时。

?
1
2
3
4
5
6
def func_arg(farg, *args):
    print("formal arg:", farg)
    for arg in args:
        print("another arg:", arg)
func_arg(1,"youzan",'dba','四块五的妞')
print("-----------------------")

# 输出结果如下:

#formal arg: 1
# another arg: youzan
# another arg: dba
# another arg: 四块五的妞
# -----------------------

#**kwargs的用法:当传入的参数个数未知,但需要知道参数的名称时(立马想到了字典,即键值对)

?
1
2
3
4
5
6
def func_kwargs(farg, **kwargs):
    print("formal arg:", farg)
    for key in kwargs:
        print("keyword arg: %s: %s" % (key, kwargs[key]))
func_kwargs(1 ,id=1, name='youzan', city='hangzhou',age ='20',四块五的妞是 = '来日方长的')
print('--------------------')

# 输出结果如下:

# formal arg: 1
# keyword arg: id: 1
# keyword arg: name: youzan
# keyword arg: city: hangzhou
# keyword arg: age: 20
# keyword arg: 四块五的妞是: 来日方长的

利用它转换参数为字典

?
1
2
3
def kw_dict(**kwargs):
    return kwargs
print(kw_dict(a=1,b=2,c=3))

输出结果如下:

# --------------------

# {'a': 1, 'b': 2, 'c': 3}

以上就是Python编程中*args与**kwargs区别作用详解的详细内容,更多关于Python中*args与**kwargs的资料请关注服务器之家其它相关文章!

原文链接:https://blog.csdn.net/qq_41877039/article/details/97623476

标签:

相关文章

热门资讯

蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
返回顶部