python怎样计算两个列表乘积的和?有哪些方法?
发布时间:2022-03-21 14:17:18 所属栏目:语言 来源:互联网
导读:本文给大家介绍python怎样计算两个列表乘积的和,这两个不等长列表是a=[1,2,3],b=[4,5,6,7],求它们乘积的和?那么有什么方法呢?下面给大家分享两种方法: 我一开始想到的方法就是选择更小数组作为循环长度然后相乘求和: a = [1,2,3] b = [4,5,6,7] sum =
本文给大家介绍python怎样计算两个列表乘积的和,这两个不等长列表是a=[1,2,3],b=[4,5,6,7],求它们乘积的和?那么有什么方法呢?下面给大家分享两种方法: 我一开始想到的方法就是选择更小数组作为循环长度然后相乘求和: a = [1,2,3] b = [4,5,6,7] sum = 0 for i in range(0,min(len(a),len(b))): number += a[i]*b[i] print(sum) 但是后来我想到了一种更为巧妙的方法,利用函数zip(): a = [1,2,3] b = [4,5,6,7] all = zip(a,b) num = 0 for i,j in all: num += i*j print(num) 两种方法的结果完全相同 zip()函数的作用是将列表打包为元组列表,以上述两个列表为例: a = [1,2,3] b = [4,5,6,7] all = zip(a,b) 这时的“all”实际上是这样的形式: [(1, 4), (2, 5), (3, 6)] 很有意思的小实例,顺便学习了一个函数 补充:Python 计算列表元素之积 定义一个数字列表,并计算列表元素之积。 例如: 输入 : list1 = [1, 2, 3] 输出 : 6 计算:1 * 2 * 3 实例 1 def multiplyList(myList) : result = 1 for x in myList: result = result * x return result list1 = [1, 2, 3] list2 = [3, 2, 4] print(multiplyList(list1)) print(multiplyList(list2)) 以上实例输出结果为: 6 24 采用递归方法: def list_product(list_1,size): if size == 0: return 1 else: return list_1[size-1] * list_product(list_1,size - 1) list_1 = [i for i in range(3,6)] #生成列表[3,4,5] print(list_1) print(list_product(list_1,len(list_1))) (编辑:鹤壁站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |