如何在for循环中应用lambda函数

时间:2019-06-28 13:04:14

标签: python python-3.x

我正在学习如何在for循环中使用lambda函数并面对

l3=['one','two','three']
for i in l3:
    lambda i: i.upper()
    print(i)

我希望列表中的每个成员都使用大写字母,但输出使用小写字母相同。我在做什么错了?

2 个答案:

答案 0 :(得分:0)

正如其他人所评论的那样,您正在打印变量i而不是完全调用lambda

尝试:

x = lambda i: i.upper()
print(x(i)) 

答案 1 :(得分:-1)

您正在定义lambda,但从未调用过它。你可能的意思是

l3 = ['one','two','three']
for i in l3:
    i = (lambda x: x.upper())(i)
    print(i)

l3 = ['one','two','three']
for i in l3:
    f = lambda x: x.upper()
    print(f(i))

关于如何使用lambda的例子都不是很好的例子。

此外,请注意,我调用的是参数x而不是i,因为lambda中的i与您使用的i不同用于迭代列表。