我如何求和内部数组的元素? 红宝石

问题描述

假设我有一个这样的数组,

try: from pip import main as pipmain except ImportError: from pip._internal import main as pipmain

如何在Ruby中将以上内容转换为以下内容

import sys,os def blockPrint(): sys.stdout = open(os.devnull,'w') def enablePrint(): sys.stdout = sys.__stdout__ blockPrint() try: from pip import main as pipmain except ImportError: from pip._internal import main as pipmain pipmain(['install','numpy']) enablePrint() print("hello")

提前谢谢!

解决方法

我会选择:

a = [[1,2],[1,4],8],16]]
a.map!(&:sum)
#=> [3,5,9,17]
,

方法1:
使用map,在其中添加内部2元素数组的2个元素。 { ... }块返回最后计算的表达式,即x + y

a = [[1,16]]
a = a.map{ |x,y| x + y }
puts a.inspect
# [3,17]

方法2:
使用map,然后使用sum内部数组的所有元素,并返回总和:

a = [[1,16]]
a = a.map{ |el| el.sum }
puts a.inspect
# [3,17]