咨询时间:9:00~21:00 400-059-6872

    您的位置: 主页 > 内容中心 > 小码问答>Python中arg和*kwarg的作用?

    Python中arg和*kwarg的作用?

    导读:*args和**kwargs是Python的万能可变参数,用来处理函数参数数量不确定的场景;*args接收位置参数并打包成元组tuple,**kwargs接收关
    答

    *args和**kwargs是Python的万能可变参数,用来处理函数参数数量不确定的场景;*args接收位置参数并打包成元组tuple,**kwargs接收关键字参数并打包成字典dict。

    在编写Python自定义函数时,如果无法提前确定调用函数时会传入多少个参数,就可以使用这两组可变参数。*args,星号加args,用于接收不定数量的位置参数,调用函数时传入的多个位置参数,会自动打包放入一个元组tuple中,后续代码可以像遍历元组一样读取每一个参数。要注意,args只是约定俗成的变量名,核心是前面的单星号,写成*num也可以,但行业习惯统一使用*args。

    而**kwargs,双星号加kwargs,用来接收不定数量的关键字参数,也就是key=value这种形式的传参,所有传入的关键字参数会自动打包存入字典dict,程序可以通过键名读取对应的值。kwargs同样只是通用命名,核心是双星号。二者经常搭配使用,*args要写在**kwargs前面,语法顺序不能颠倒。

    在少儿编程项目实战中,这个功能很实用,比如编写简易AI工具、批量数据处理的程序,不确定传入多少组数据时,就可以用可变参数,让函数适配灵活多变的传参场景,简化代码,避免反复修改函数形参列表。

    202.jpg

    学习提示

    学习Python基础阶段,一定要分清位置参数和关键字参数的区别,单星号和双星号的作用不要混淆,动手写简短示例代码运行测试,更容易吃透这个知识点。

    免责声明:本文为小码王原创内容,版权归小码王所有。本文标题:Python中arg和*kwarg的作用?,原文地址:https://www.xiaomawang.cn/wenda/230660.html。欢迎转载,转载请说明出处。若您认为本文侵犯了您的版权信息,或您发现该内容有任何涉及有违公德、触犯法律等违法信息,请您立即通过邮件(邮箱号:hzlixy@xiaoma.cn)联系我们及时修正或删除。
    回到顶部
    弹出表单占位框
    免费领取小码王少儿AI编程体验课