为什么lambda在处理序列时不能正常工作?

时间:2019-04-23 21:33:55

标签: python lambda min

当我尝试从其中返回一个元组时,Lambda似乎不起作用,该元组由2个字符组成,每个字符均为其列表的min()。正常的功能似乎可以正常工作,所以这是使用lambda的限制,还是我缺少一些愚蠢的东西?使用list()或tuple()会返回错误。

import random

randnums = [random.randrange(2, num+3) for num in range(10)]

data = list(range(10))

def get_min(x,y):
    return (min(x), min(y))

print(get_min(data, randnums))

print(list(map(lambda x,y: (min(x), min(y)), data, randnums)))

1 个答案:

答案 0 :(得分:1)

只需调用该功能

(lambda x,y: (min(x), min(y)))(data, randnums)

与您致电get_min(data, randnums)的确切方法相同。函数,开括号,参数,右括号,但以(lambda x,y: (min(x), min(y)))作为函数而不是get_min