简单谈谈Python中函数的可变参数


Posted in Python onSeptember 02, 2016

前言

在Python中定义函数,可以用必选参数、默认参数、可变参数和关键字参数,这4种参数都可以一起使用,或者只用其中某些,但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数和关键字参数。

可变参数( * )

可变参数,顾名思义,它的参数是可变的,比如列表、字典等。如果我们需要函数处理可变数量参数的时候,就可以使用可变参数。

我们在查看很多Python源码时,经常会看到 某函数(*参数1, **参数2)这样的函数定义,这个*参数和**参数就是可变参数,一时会让人有点费解。其实只要把函数可变参数的定义搞清楚了,就不难理解了。

当我们不知道需要用几个参数来定义函数的时候,可变参数就可以大展手脚了。

在Python里,带 * 的参数就是用来接受可变数量参数的。

如果一个函数定义如下:

def functionTest(*args): 
 .... 
 .... 
 ....

调用时我们可以的这样调用:

functionTest(1) 
或者 
functionTest(1,2) 
或者 
functionTest(1,2,3)

后面可以传入多个参数。

看段实例代码,观察下*是怎么具体应用的吧:

def get_sum(*numbers): 
 sum = 0 
 for n in numbers: 
  sum += n 
 return sum 
  
#在这里写下你的代码来调用get_sum来求5个数字的和,并输出这个结果 
print (get_sum(1,2,3,4,5))

结果会是什么呢?大家可以自己动手操作起来看下,以就是关于Python中函数可变参数的全部内容,希望这篇文章对大家学习或使用python能有所帮助,如果有疑问可以留言交流。

Python 相关文章推荐
python使用正则表达式检测密码强度源码分享
Jun 11 Python
浅析Python中元祖、列表和字典的区别
Aug 17 Python
解决pyqt中ui编译成窗体.py中文乱码的问题
Dec 23 Python
浅述python中argsort()函数的实例用法
Mar 30 Python
python 换位密码算法的实例详解
Jul 19 Python
Python实现JSON反序列化类对象的示例
Jan 31 Python
Python批量发送post请求的实现代码
May 05 Python
Python实现base64编码的图片保存到本地功能示例
Jun 22 Python
对django xadmin自定义菜单的实例详解
Jan 03 Python
pycharm 实现显示project 选项卡的方法
Jan 17 Python
python基于opencv检测程序运行效率
Dec 28 Python
解析python中的jsonpath 提取器
Jan 18 Python
Python实现自动添加脚本头信息的示例代码
Sep 02 #Python
利用Python获取操作系统信息实例
Sep 02 #Python
好用的Python编辑器WingIDE的使用经验总结
Aug 31 #Python
Linux下为不同版本python安装第三方库
Aug 31 #Python
Python中的左斜杠、右斜杠(正斜杠和反斜杠)
Aug 30 #Python
分享Python开发中要注意的十个小贴士
Aug 30 #Python
Python将图片批量从png格式转换至WebP格式
Aug 22 #Python
You might like
77A一级收信机修理记
2021/03/02 无线电
PhpMyAdmin中无法导入sql文件的解决办法
2010/01/08 PHP
PHP弹出提示框并跳转到新页面即重定向到新页面
2014/01/24 PHP
ThinkPHP路由详解
2015/07/27 PHP
PHP入门教程之会话控制技巧(cookie与session)
2016/09/11 PHP
基于jQuery实现的当离开页面时出现提示的实现代码
2011/06/27 Javascript
基于jQuery的模仿新浪微博时间的组件
2011/10/04 Javascript
JS判断表单输入是否为空(示例代码)
2013/12/23 Javascript
jquery+ajax+text文本框实现智能提示完整实例
2016/07/09 Javascript
jQuery.ajax 跨域请求webapi设置headers的解决方案
2016/08/08 Javascript
JS简单获取当前日期和农历日期的方法
2017/04/17 Javascript
JavaScript之filter_动力节点Java学院整理
2017/06/28 Javascript
AngularJS页面带参跳转及参数解析操作示例
2017/06/28 Javascript
jQuery实现鼠标滑过商品小图片上显示对应大图片功能【测试可用】
2018/04/27 jQuery
vue组件中watch props根据v-if动态判断并挂载DOM的问题
2019/05/12 Javascript
Vue项目页面跳转时浏览器窗口上方显示进度条功能
2020/03/26 Javascript
JS实现炫酷雪花飘落效果
2020/08/19 Javascript
[26:21]浴火之凤-TI4世界冠军Newbee战队纪录片
2014/08/07 DOTA
python使用cookie库操保存cookie详解
2014/03/03 Python
pycharm 使用心得(三)Hello world!
2014/06/05 Python
Python基于动态规划算法解决01背包问题实例
2017/12/06 Python
python读取Excel实例详解
2018/08/17 Python
Python 3.8中实现functools.cached_property功能
2019/05/29 Python
Django中在xadmin中集成DjangoUeditor过程详解
2019/07/24 Python
Python3 文章标题关键字提取的例子
2019/08/26 Python
Python 改变数组类型为uint8的实现
2020/04/09 Python
Keras构建神经网络踩坑(解决model.predict预测值全为0.0的问题)
2020/07/07 Python
HTML5中的postMessage API基本使用教程
2016/05/20 HTML / CSS
美国运动鞋类和服装零售连锁店:Shoe Palace
2019/08/13 全球购物
工商企业管理应届生求职信
2014/05/04 职场文书
医院护士工作检讨书
2014/10/26 职场文书
发展党员工作情况汇报
2014/10/28 职场文书
会议开幕词
2015/01/28 职场文书
2015年七夕爱情寄语
2015/03/24 职场文书
《分一些蚊子进来》读后感3篇
2020/01/09 职场文书
Golang 并发编程 SingleFlight模式
2022/04/26 Golang