加入收藏 | 设为首页 | 会员中心 | 我要投稿 鹤壁站长网 (https://www.0392zz.cn/)- 分布式云、存储数据、视频终端、媒体处理、内容创作!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

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))) 

(编辑:鹤壁站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读