python中lambda字典

2023-02-23 00:00:00 python lambda 字典

在 Python 中,lambda 函数可以用来创建匿名函数。lambda 函数通常用于在需要函数作为参数的函数中,例如 map() 和 filter() 函数。同时,lambda 函数也可以用于创建字典。

字典可以使用 {} 和 dict() 函数来创建,其中 {} 的语法更简洁。要在字典中使用 lambda 函数,可以使用以下语法:

my_dict = {'a': 1, 'b': 2, 'c': 3}
new_dict = {key: lambda x: x * my_dict[key] for key in my_dict}

上述代码中,我们使用了字典推导式来创建一个新字典 new_dict。在字典推导式中,我们遍历原始字典 my_dict 中的键,对于每个键,使用 lambda 函数创建一个以 x 为参数,返回 x * my_dict[key] 的函数,并将其作为该键的值。这样就创建了一个新的字典 new_dict,其键和值分别来自于原始字典和 lambda 函数。

注意,在 lambda 函数中使用了原始字典的值 my_dict[key],这是因为 lambda 函数在创建时就会捕获该变量的值,而不是在 lambda 函数调用时再获取该变量的值。因此,lambda 函数可以在字典推导式中正确地引用原始字典中的值。

可以使用以下代码检查新字典 new_dict 的内容:

for key, value in new_dict.items():
    print(key, value(10))

上述代码输出了新字典中每个键和其对应的 lambda 函数返回值。

相关文章