Python编程中*args与**kwargs区别作用详解
相信学Python的小伙伴肯定有这样的尴尬局面,给一个函数不会用,
原因是:不知道参数列表中的类型是什么意思,比如初学者都会疑问的:*args和**kwargs到底是怎么用。
当你知道这个时,我猜你肯定能会用好多函数了!
#*args的用法:当传入的参数个数未知,且不需要知道参数名称时。
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的用法:当传入的参数个数未知,但需要知道参数的名称时(立马想到了字典,即键值对)
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: 四块五的妞是: 来日方长的
利用它转换参数为字典
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的资料请关注脚本之家其它相关文章!
相关文章
Python+OpenCV图像处理——打印图片属性、设置存储路径、调用摄像头
这篇文章主要介绍了Python+OpenCV图像处理——打印图片属性、设置存储路径、调用摄像头的示例,帮助大家更好的利用python处理图片,感兴趣的朋友可以了解下2020-10-10
分享一枚pycharm激活码适用所有pycharm版本我的pycharm2020.2.3激活成功
这篇文章主要分享一枚pycharm激活码适用所有pycharm版本我的pycharm2020.2.3激活成功,需要的朋友可以参考下2020-11-11
tesserocr与pytesseract模块的使用方法解析
这篇文章主要介绍了tesserocr与pytesseract模块的使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2019-08-08
pytest官方文档解读Fixture errors抛错解决
这篇文章主要为大家介绍了pytest官方文档解读Fixture errors抛错后的解决方案,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-06-06


最新评论