简单谈谈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 03 Python
Python 爬虫爬取指定博客的所有文章
Feb 17 Python
Python打包可执行文件的方法详解
Sep 19 Python
Python探索之爬取电商售卖信息代码示例
Oct 27 Python
基于并发服务器几种实现方法(总结)
Dec 29 Python
python3 自动打印出最新版本执行的mysql2redis实例
Apr 09 Python
python主要用于哪些方向
Jul 05 Python
Python2手动安装更新pip过程实例解析
Jul 16 Python
Python实现弹球小游戏
Aug 01 Python
详解anaconda离线安装pytorchGPU版
Sep 08 Python
python处理写入数据代码讲解
Oct 22 Python
使用Python制作一盏 3D 花灯喜迎元宵佳节
Feb 26 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
PHP 程序员应该使用的10个组件
2009/10/31 PHP
Fatal error: Call to undefined function curl_init()解决方法
2010/04/09 PHP
destoon利用Rewrite规则设置网站安全
2014/06/21 PHP
Yii中Model(模型)的创建及使用方法
2015/12/28 PHP
yii2中LinkPager增加总页数和总记录数的实例
2017/08/28 PHP
laravel中短信发送验证码的实现方法
2018/04/25 PHP
php ActiveMQ的安装与使用方法图文教程
2020/02/23 PHP
javascript &&和||运算法的另类使用技巧
2009/11/28 Javascript
jquery数据验证插件(自制,简单,练手)实例代码
2013/10/24 Javascript
JavaScript数组去重的几种方法效率测试
2016/10/23 Javascript
Omi v1.0.2发布正式支持传递javascript表达式
2017/03/21 Javascript
如何将百度地图包装成Vue的组件的方法步骤
2019/02/12 Javascript
浅谈vuex为什么不建议在action中修改state
2020/02/02 Javascript
JavaScript canvas动画实现时钟效果
2020/02/10 Javascript
JS前端面试必备——基本排序算法原理与实现方法详解【插入/选择/归并/冒泡/快速排序】
2020/02/24 Javascript
vant 自定义 van-dropdown-item的用法
2020/08/05 Javascript
[00:32]DOTA2上海特级锦标赛 Ehome战队宣传片
2016/03/03 DOTA
[58:18]2018DOTA2亚洲邀请赛3月29日 小组赛B组 iG VS Mineski
2018/03/30 DOTA
天翼开放平台免费短信验证码接口使用实例
2013/12/18 Python
Python易忽视知识点小结
2015/05/25 Python
Python3中使用PyMongo的方法详解
2017/07/28 Python
python enumerate函数的使用方法总结
2017/11/15 Python
用Python删除本地目录下某一时间点之前创建的所有文件的实例
2017/12/14 Python
基于OpenCV python3实现证件照换背景的方法
2019/03/22 Python
Pycharm及python安装详细步骤及PyCharm配置整理(推荐)
2020/07/31 Python
Python爬虫实现HTTP网络请求多种实现方式
2020/06/19 Python
Html5中的桌面通知Notification的实现
2018/09/25 HTML / CSS
最新计算机专业自荐信
2013/10/16 职场文书
初中生期末考试的自我评价
2013/12/17 职场文书
企业安全生产责任书
2014/04/14 职场文书
表彰大会策划方案
2014/05/13 职场文书
货物运输服务质量承诺书
2014/05/29 职场文书
优秀班主任主要事迹材料
2014/12/16 职场文书
给老婆道歉的话
2015/01/20 职场文书
创业计划书之少年玩具店
2019/09/05 职场文书
十大最强电系宝可梦,阿尔宙斯电系之一,第七被称为雷神
2022/03/18 日漫