lambda 去字典的值
时间: 2023-08-05 20:07:33 浏览: 59
在 Python 中,我们可以使用 `lambda` 表达式和 `map` 函数来实现从字典中获取值的操作。例如,假设我们有一个字典如下:
```python
my_dict = {"name": "Alice", "age": 30, "gender": "female"}
```
我们可以使用下面的 `lambda` 表达式和 `map` 函数获取字典中的所有值:
```python
values = map(lambda x: my_dict[x], my_dict)
print(list(values)) # 输出 ['Alice', 30, 'female']
```
在这个例子中,`lambda` 表达式 `lambda x: my_dict[x]` 接受一个键名 `x`,并返回对应的值 `my_dict[x]`。`map` 函数将这个 `lambda` 表达式应用到字典的所有键名上,返回一个包含所有值的迭代器。最后,我们使用 `list` 函数将迭代器转换为列表输出。
需要注意的是,这个方法返回的值是按照字典键名的顺序排列的,而不是按照值的顺序排列的。如果你需要按照值的顺序排列,可以使用 `sorted` 函数对字典键名进行排序,然后再使用 `map` 函数获取值。例如:
```python
keys_sorted = sorted(my_dict.keys(), key=lambda x: my_dict[x])
values_sorted = map(lambda x: my_dict[x], keys_sorted)
print(list(values_sorted)) # 输出 [30, 'female', 'Alice']
```
阅读全文