首页 > 解决方案 > 将不同的函数应用于python中数组数组中的元素

问题描述

我想将一些函数应用于数组数组中的某些元素。

def func_1(num):
    return num+1

def func_2(num):
    return num+2

test_array = [ [10,1],[10,1],[11,2]]

我想将函数func_1应用于每个数组的第一个元素,并将函数func_2应用于每个数组的第二个元素。

结果数组将如下所示;

result_array = [ [11,3],[11,3],[12,4]]

我正在使用 python 3.7

标签: pythonpython-3.xlist

解决方案


你可以使用map()

def func_1(num):
    return num+1

def func_2(num):
    return num+2

test_array = [ [10,1],[10,1],[11,2]]

out = list(map(lambda x: [func_1(x[0]), func_2(x[1])], test_array))

print(out)

印刷:

[[11, 3], [11, 3], [12, 4]]

或使用理解:

out = [[func_1(x), func_2(y)]  for x, y in test_array]

推荐阅读