关于python实现二维数组所有元素求和

本文介绍了如何在Python中使用一行代码求二维数组的和,包括使用map、sum以及reduce函数的方法。示例代码如:a = [[1,2],[3,4],[5,6]],推荐的方法为sum(map(sum,a))和sum(sum(i) for i in a)。文章还解释了map和reduce函数的工作原理,并提到两者在简洁性和效率方面的考虑。" 128653882,15460291,C++中的布尔类型bool详解,"['C++', '开发语言', '数据类型']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天遇到一个需求,求二维数组的和,尽量在一行代码中完成:

   关于二维数组求和的几种方法:

   a = [[1,2],[3,4],[5,6]]

   1.sum(map(sum,a)) #first, map(func,a) 函数是对a中的每一个元素进行sum操作

  解释一下map函数, map(fund, a)   equals   [func(i) for i in a]  and return a list

   2.sum(sum(i) for i in a) second one

   3.sum(sum(a[i]) for i in range(len(a))) #third one

   4.reduce(lambda x,y:x+y , reduce(lambda x,y:x+y, a))

     解释一下reduce(fun,a),只不说reduce返回的是一个结果值而不是一个list,第一步的时候是([1,2]+[3,4]) + [5,6]

     得到一个[1,2,3,4,5,6], 然后进行的运算是(((((1+2)+3)+4)+5)+6) = 21


一般来说最常用的还是1和3这两种方法,不知道map or reduce, 一般都会采用3, 而知道的应该会采用1,比较简洁,至于效率方面没有尽兴比较。


感谢群里小伙伴们的建议和讨论,仅作为学习笔记。 



评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值