python 通过可变参数计算n个数的乘积方法


Posted in Python onJune 13, 2019

通过可变参数计算n个数的乘积:

代码如下:

list = []
def the_input(count=eval(input("输入乘数的总个数:"))):


  for i in range(count):
    N=eval(input("依次输入乘数:"))
    list.append(N)
  print("一共有",count,"个要相乘的数")
  print("把这些乘放在列表里面:",list)



the_input()


def get_mul(*num):
  sum =1
  for n in num:
    sum = sum * n
  return sum



print("这鞋数相乘的最终结果是:",get_mul(*list))

运行结果

python 通过可变参数计算n个数的乘积方法

可变参数 解释

在Python函数中,还可以定义可变参数。顾名思义,可变参数就是传入的参数个数是可变的,可以是1个、2个到任意个,还可以是0个。

我们以数学题为例子,给定一组数字a,b,c……,请计算a2 + b2 + c2 + ……。

要定义出这个函数,我们必须确定输入的参数。由于参数个数不确定,我们首先想到可以把a,b,c……作为一个list或tuple传进来,这样,函数可以定义如下:

def calc(numbers): 
sum = 0 
for n in numbers: 
sum = sum + n * n 
return sum

但是调用的时候,需要先组装出一个list或tuple:

calc([1, 2, 3]) 
14 
calc((1, 3, 5, 7)) 
84

如果利用可变参数,调用函数的方式可以简化成这样:

calc(1, 2, 3) 
14 
calc(1, 3, 5, 7) 
84

所以,我们把函数的参数改为可变参数:

def calc(*numbers): 
sum = 0 
for n in numbers: 
sum = sum + n * n 
return sum

定义可变参数和定义一个list或tuple参数相比,仅仅在参数前面加了一个*号。在函数内部,参数numbers接收到的是一个tuple,因此,函数代码完全不变。但是,调用该函数时,可以传入任意个参数,包括0个参数:

calc(1, 2) 
5 
calc() 
0

如果已经有一个list或者tuple,要调用一个可变参数怎么办?可以这样做:

nums = [1, 2, 3] 
calc(nums[0], nums[1], nums[2]) 
14

这种写法当然是可行的,问题是太繁琐,所以Python允许你在list或tuple前面加一个*号,把list或tuple的元素变成可变参数传进去:

nums = [1, 2, 3] 
calc(*nums) 
14

*nums表示把nums这个list的所有元素作为可变参数传进去。这种写法相当有用,而且很常见。

以上这篇python 通过可变参数计算n个数的乘积方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python的三目运算符和not in运算符使用示例
Mar 03 Python
Python中死锁的形成示例及死锁情况的防止
Jun 14 Python
python中requests使用代理proxies方法介绍
Oct 25 Python
python输出100以内的质数与合数实例代码
Jul 08 Python
python绘制地震散点图
Jun 18 Python
python命令行参数用法实例分析
Jun 25 Python
python opencv 简单阈值算法的实现
Aug 04 Python
python 求10个数的平均数实例
Dec 16 Python
python+gdal+遥感图像拼接(mosaic)的实例
Mar 10 Python
PyQt5.6+pycharm配置以及pyinstaller生成exe(小白教程)
Jun 02 Python
python exit出错原因整理
Aug 31 Python
分享一个python的aes加密代码
Dec 22 Python
python 多线程对post请求服务器测试并发的方法
Jun 13 #Python
Python任意字符串转16, 32, 64进制的方法
Jun 12 #Python
使用python制作一个为hex文件增加版本号的脚本实例
Jun 12 #Python
Python hexstring-list-str之间的转换方法
Jun 12 #Python
对python3.4 字符串转16进制的实例详解
Jun 12 #Python
python版DDOS攻击脚本
Jun 12 #Python
selenium处理元素定位点击无效问题
Jun 12 #Python
You might like
PHP文本数据库的搜索方法
2006/10/09 PHP
PHP遍历目录函数opendir()、readdir()、closedir()、rewinddir()总结
2014/11/18 PHP
如何使用php实现评委评分器
2015/07/31 PHP
优化WordPress中文章与评论的时间显示
2016/01/12 PHP
php结合md5的加密解密算法实例
2016/09/30 PHP
自制PHP框架之路由与控制器
2017/05/07 PHP
JAVASCRIPT对象及属性
2007/02/13 Javascript
node.js Web应用框架Express入门指南
2014/05/28 Javascript
JavaScript中的object转换函数toString()与valueOf()介绍
2014/12/31 Javascript
vue2.0实现倒计时的插件(时间戳 刷新 跳转 都不影响)
2017/03/30 Javascript
vue v-model表单控件绑定详解
2017/05/17 Javascript
利用yarn代替npm管理前端项目模块依赖的方法详解
2017/09/04 Javascript
Node.js readline 逐行读取、写入文件内容的示例
2018/03/01 Javascript
vue移动端路由切换实例分析
2018/05/14 Javascript
VUE2.0+ElementUI2.0表格el-table循环动态列渲染的写法详解
2018/11/30 Javascript
新年快乐! javascript实现超级炫酷的3D烟花特效
2019/01/30 Javascript
JS添加或删除HTML dom元素的方法实例分析
2019/03/05 Javascript
微信小程序 wepy框架与iview-weapp的用法详解
2019/04/10 Javascript
原生JS与CSS实现软件卸载对话框功能
2019/12/05 Javascript
vue简单封装axios插件和接口的统一管理操作示例
2020/02/02 Javascript
vue自动添加浏览器兼容前后缀操作
2020/08/13 Javascript
Python 加密的实例详解
2017/10/09 Python
R vs. Python 数据分析中谁与争锋?
2017/10/18 Python
Interhome丹麦:在线预订度假屋和公寓
2019/07/18 全球购物
ANINE BING官方网站:奢华的衣橱基本款和时尚永恒的单品
2019/11/26 全球购物
员工晚婚的请假条
2014/02/08 职场文书
毕业晚会主持词
2014/03/24 职场文书
质量承诺书范文
2014/03/27 职场文书
股权转让协议书范本
2014/04/12 职场文书
优秀党务工作者事迹材料
2014/05/07 职场文书
假面舞会策划方案
2014/05/29 职场文书
物理系毕业生自荐书
2014/06/13 职场文书
趣味运动会广播稿
2014/09/13 职场文书
会计试用期自我评价怎么写
2014/09/18 职场文书
三八妇女节寄语
2015/02/27 职场文书
Python机器学习之KNN近邻算法
2021/05/14 Python