本文给大家介绍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)]
很有意思的小实例,顺便学习了一个函数
定义一个数字列表,并计算列表元素之积。
例如:
输入 : 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)))
现在大家对于python 计算两个列表乘积的和应该都了解了吧,希望对大家学习Python有帮助,想要了解更多python 计算的相关内容,大家可以关注其他相关文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理