简单谈谈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图像处理之镜像实现方法
May 30 Python
Python的Django框架中设置日期和字段可选的方法
Jul 17 Python
详解Python的Lambda函数与排序
Oct 25 Python
Python基于高斯消元法计算线性方程组示例
Jan 17 Python
使用Python向C语言的链接库传递数组、结构体、指针类型的数据
Jan 29 Python
Python占用的内存优化教程
Jul 28 Python
Python 日志logging模块用法简单示例
Oct 18 Python
tensorflow如何继续训练之前保存的模型实例
Jan 21 Python
PyCharm 在Windows的有用快捷键详解
Apr 07 Python
Python如何实现邮件功能
May 27 Python
python调用摄像头的示例代码
Sep 28 Python
使用python实现学生信息管理系统
Feb 25 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
jq的get传参数在utf-8中乱码问题的解决php版
2008/07/23 PHP
php生成zip压缩文件的方法详解
2013/06/09 PHP
一个简单的php加密解密函数(动态加密)
2013/06/19 PHP
CentOS 上搭建 PHP7 开发测试环境
2017/02/26 PHP
ThinkPHP框架下微信支付功能总结踩坑笔记
2019/04/10 PHP
JQuery从头学起第二讲
2010/07/04 Javascript
用按钮控制iframe显示的网页实现方法
2013/02/04 Javascript
ExtJS自定义主题(theme)样式详解
2013/11/18 Javascript
jquery toolbar与网页浮动工具条具体实现代码
2014/01/12 Javascript
IE中getElementsByName()对有些元素无效的解决方案
2014/09/28 Javascript
纯javascript移动优先的幻灯片效果
2015/11/02 Javascript
javascript性能优化之DOM交互操作实例分析
2015/12/12 Javascript
javascript基础知识
2016/06/07 Javascript
微信小程序 window_x64环境搭建
2016/09/30 Javascript
Bootstrap框架安装使用详解
2017/01/21 Javascript
微信小程序之多文件下载的简单封装示例
2018/01/29 Javascript
JavaScript 正则命名分组【推荐】
2018/06/07 Javascript
jQuery实现基本隐藏与显示效果的方法详解
2018/09/05 jQuery
vue init webpack 建vue项目报错的解决方法
2018/09/29 Javascript
JS判断两个数组或对象是否相同的方法示例
2019/02/28 Javascript
angular4+百分比进度显示插件用法示例
2019/05/05 Javascript
简单学习5种处理Vue.js异常的方法
2019/06/17 Javascript
JavaScript实现背景自动切换小案例
2019/09/27 Javascript
jstree中的checkbox默认选中和隐藏示例代码
2019/12/29 Javascript
Python中sort和sorted函数代码解析
2018/01/25 Python
Django项目使用CircleCI的方法示例
2019/07/14 Python
python 代码实现k-means聚类分析的思路(不使用现成聚类库)
2020/06/01 Python
小学教师学期末自我评价
2013/09/25 职场文书
医院门卫岗位职责
2013/12/30 职场文书
法制宣传实施方案
2014/03/13 职场文书
毕业生就业推荐表自我鉴定
2014/03/20 职场文书
学校开学标语
2014/10/06 职场文书
幼儿园开学温馨提示
2015/07/15 职场文书
小学数学教师研修感悟
2015/11/18 职场文书
web前端之css水平居中代码解析
2021/05/20 HTML / CSS
Meta增速拉垮,元宇宙难当重任
2022/04/29 数码科技