详解Python的三种可变参数

yipeiwu_com6年前Python基础

可变参数

可变参数应该最简单,在C/C++和Java等语言中都有,就是用*号来表示,例如

def testArg(*arg)

你可以传入任意多个元素(包括0)到参数中,在函数内部会自动认为是一个元组或列表

关键字参数

关键字参数在python中习惯用**kw表示,可以传入0到任意多个“关键字-值”,参数在函数内部被当做一个字典结构。例如

def testArg(**kw)
def testArg(city,**kw)

可以这样调用他

testArg(name='John',job='hoker')
testArg('beijin',name='john')

关键字参数可以用来后期扩充函数的功能,例如:先设定必要的参数,之后选择性的增加可选参数。

命名关键字参数

采用命名关键字参数可以限制函数传入的关键字参数,定义如下:

def testArg(city,name,*,age,job)

可以这样调用他

testArg('beijin','wfp',age='25',job='hoker')
testArg('beijin','wfp',addr='shanghai',age='25',job='hoker')

但是不能这样调用他

testArg('beijin','wfp','25',job='hoker')

会提示缺少一个参数,定义了命名关键字参数的话,必须要把全部的关键字参数传入进去

以上所述是小编给大家介绍的Python的三种可变参数详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

Python 开发Activex组件方法

使用win32com模块开发window ActiveX的示例:(如果你还没有装win32com模块的话,请到http://python.net/crew/skippy/win32/Do...

Python重新加载模块的实现方法

importlib 模块的作用 模块,是一个一个单独的py文件 包,里面包含多个模块(py文件) 动态导入模块,这样就不用写那么多的import代码, 典型的例子: 自动同步服务,每个网...

python实现通过pil模块对图片格式进行转换的方法

本文实例讲述了python实现通过pil模块对图片格式进行转换的方法。分享给大家供大家参考。具体分析如下: python的pil模块相当的智能,如果你需要对图片格式进行转换,比如jpg转...

python切片及sys.argv[]用法详解

一、python切片 a=a[::-1] 倒序 a=a[1:10:2] 下标1~10,以2间隔取 a=a[::2] 2间隔返回a[:] a=[1,2,3,4,5,6,7] print...

python接口自动化如何封装获取常量的类

这篇文章主要介绍了python接口自动化如何封装获取常量的类,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 背景: 一、执行case的...