详解Python的三种可变参数


Posted in Python onMay 08, 2019

可变参数

可变参数应该最简单,在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的SQLAlchemy框架使用入门
Apr 29 Python
Python中绑定与未绑定的类方法用法分析
Apr 29 Python
Python黑魔法Descriptor描述符的实例解析
Jun 02 Python
python 遍历字符串(含汉字)实例详解
Apr 04 Python
Python使用Dijkstra算法实现求解图中最短路径距离问题详解
May 16 Python
python实现黑客字幕雨效果
Jun 21 Python
wxpython+pymysql实现用户登陆功能
Nov 19 Python
Pytorch 定义MyDatasets实现多通道分别输入不同数据方式
Jan 15 Python
tensorflow 获取checkpoint中的变量列表实例
Feb 11 Python
python如何导入依赖包
Jul 13 Python
python包的导入方式总结
Mar 02 Python
聊聊Python中关于a=[[]]*3的反思
Jun 02 Python
Python数据类型之Tuple元组实例详解
May 08 #Python
基于腾讯云服务器部署微信小程序后台服务(Python+Django)
May 08 #Python
python中正则表达式与模式匹配
May 07 #Python
详解Python3网络爬虫(二):利用urllib.urlopen向有道翻译发送数据获得翻译结果
May 07 #Python
python对象与json相互转换的方法
May 07 #Python
python使用threading.Condition交替打印两个字符
May 07 #Python
python实现银联支付和支付宝支付接入
May 07 #Python
You might like
PHP接收App端发送文件流的方法
2016/09/23 PHP
php+ajax实现仿百度查询下拉内容功能示例
2017/10/20 PHP
PHP实现一个限制实例化次数的类示例
2019/09/16 PHP
COM中获取JavaScript数组大小的代码
2009/11/22 Javascript
javascript获取checkbox复选框获取选中的选项
2014/08/12 Javascript
在for循环中length值是否需要缓存
2015/07/27 Javascript
jQuery Mobile动态刷新页面样式的实现方法
2016/05/28 Javascript
jQuery组件easyui基本布局实现代码
2016/08/25 Javascript
KnockoutJS 3.X API 第四章之click绑定
2016/10/10 Javascript
JS填写银行卡号每隔4位数字加一个空格
2016/12/19 Javascript
jQuery+C#实现参数RSA加密传输功能【附jsencrypt.js下载】
2017/06/26 jQuery
Express + Node.js实现登录拦截器的实例代码
2017/07/01 Javascript
用vue构建多页面应用的示例代码
2017/09/20 Javascript
vue router仿天猫底部导航栏功能
2017/10/18 Javascript
浅谈vue项目重构技术要点和总结
2018/01/23 Javascript
JS实现的类似微信聊天效果示例
2019/01/29 Javascript
基于vue的video播放器的实现示例
2021/02/19 Vue.js
[01:04:35]2018DOTA2亚洲邀请赛 4.3 突围赛 Secret vs VG 第一场
2018/04/04 DOTA
python中定义结构体的方法
2013/03/04 Python
python使用paramiko实现远程拷贝文件的方法
2016/04/18 Python
Python PyQt4实现QQ抽屉效果
2018/04/20 Python
django Serializer序列化使用方法详解
2018/10/16 Python
Python当中的array数组对象实例详解
2019/06/12 Python
python3.8与pyinstaller冲突问题的快速解决方法
2020/01/16 Python
在python中使用nohup命令说明
2020/04/16 Python
Numpy中np.max的用法及np.maximum区别
2020/11/27 Python
CSS3移动端vw+rem不依赖JS实现响应式布局的方法
2019/01/23 HTML / CSS
Myprotein瑞典官方网站:畅销欧洲英国运动营养品牌
2018/01/22 全球购物
地球鞋加拿大官网:Earth Shoes Canada
2020/11/17 全球购物
CSMA/CD介质访问控制协议
2015/11/17 面试题
升职自荐信范文
2013/10/05 职场文书
预备党员转正思想汇报
2014/01/12 职场文书
党的群众路线教育实践活动剖析材料
2014/09/30 职场文书
浅谈JS的原型和原型链
2021/06/04 Javascript
Python内置数据结构列表与元组示例详解
2021/08/04 Python
golang操作redis的客户端包有多个比如redigo、go-redis
2022/04/14 Golang