详解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线程详解

Python线程详解

1. 线程基础 1.1. 线程状态 线程有5种状态,状态转换的过程如下图所示: 1.2. 线程同步(锁) 多线程的优势在于可以同时运行多个任务(至少感觉起来是这样)。但是当线程需要共享...

深入浅析Python中的yield关键字

前言 python中有一个非常有用的语法叫做生成器,所利用到的关键字就是yield。有效利用生成器这个工具可以有效地节约系统资源,避免不必要的内存占用。 一段代码 def fun()...

python 实现对文件夹内的文件排序编号

使用时,需更改rootdir, 即文件保存的路径,以及要保存的格式,例如‘.jpg' 如果排序前后文件格式一样,建议先随便换个格式,然后再换回来,也就是程序运行两次,第一次随便换个格式,...

python判断字符串是否是json格式方法分享

在实际工作中,有时候需要对判断字符串是否为合法的json格式 解决方法使用json.loads,这样更加符合‘Pythonic'写法 代码示例: Python import json...

python通过移动端访问查看电脑界面

python通过移动端访问查看电脑界面

这篇文章主要介绍了python通过移动端访问查看电脑界面,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 看上心意的小姐姐,想看她平时都...