本文适合阅读对象:已学完Python基础课程,并能熟练使用Python基本用法编程。如果还有一些其他语言的基础最好不过了,如果没有Python基础或者正在学习中,请点击以下链接:

Python基础教程

一、有趣的*args和**kwargs

尽管*args和**kwargs参数不受重视,但其实它们是Python中非常有用的特性。那么*args和**kwargs参数到底有什么用呢?它们能让函数接受可选参数,因此能在模块和类中灵活创建API,举个栗子。

Python示例代码如下:

def test(required, *args, **kwargs):

    print(required)

    if args:

       print(args)

    if kwargs:

       print(kwargs)

如上所示,test函数的写法表明其至少需要一个参数,但也可接受额外位置参数和关键字参数。

args参数带有*前缀,它将收集位置参数组成元组;

kwargs参数带有**前缀,它将收集关键字参数组成字典;

大家可以实际调用测试下:

#这样调用上面的test函数,将报错...

test()

报错,提示缺少1个必要参数。

test('hello')

test('hello',1,2,3)

test('hello',1,2,3,key1='abc',key2='666')

这三种调用不会报错,输出结果分别如下,大家看懂了吗?

注意,最后有一点需要说明,参数args和kwargs

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

热门产品

php编程基础教程.pptx|php编程培训,php,编程,基础,教程,pptx
php编程基础教程.pptx

历史上的今天:04月29日

热门专题

云南综合高中|云南综合高中
云南综合高中
开放大学|开放大学报名,开放大学报考,开放大学,什么是开放大学,开放大学学历,开放大学学费,开放大学报名条件,开放大学报名时间,开放大学学历,开放大学专业
开放大学
综合高中|云南综合高中,昆明综合高中,综合高中能考本一吗,综合高中和普通高中的区别,综合高中是什么意思,综合高中能参加全国统一高考吗,综合高中可以考哪些大学,综合高中的学籍是什么
综合高中
外贸网站建设|外贸网站建设,英文网站制作,英文网站设计,美国主机空间,外贸建站平台,多语言网站制作
外贸网站建设
安徽开放大学|安徽开放大学报名,安徽开放大学报考,安徽开放大学,什么是安徽开放大学,安徽开放大学学历,安徽开放大学学费,安徽开放大学报名条件,安徽开放大学报名时间,安徽开放大学学历,安徽开放大学专业
安徽开放大学
云南巨榕教育投资集团有限公司|云南巨榕教育投资集团有限公司,巨榕教育集团,巨榕教育
云南巨榕教育投资集团有限公司
昆明综合高中|昆明综合高中
昆明综合高中
安徽中源管业有限公司|安徽中源管业有限公司,安徽中源管业有限公司介绍,安徽中源管业有限公司电话,安徽中源管业有限公司地址,安徽中源管业有限公司厂家,安徽中源管业有限公司电力管,安徽中源管业有限公司管材
安徽中源管业有限公司

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部