对字典的值排序输出键的值
时间: 2024-05-16 07:14:27 浏览: 63
假设你有一个字典,包含一些键和对应的值,你想要按照值来排序输出键的值,可以使用以下代码:
```python
my_dict = {'apple': 3, 'banana': 2, 'cherry': 4, 'date': 1}
sorted_dict = sorted(my_dict.items(), key=lambda x: x[1])
for key, value in sorted_dict:
print(key, value)
```
这个代码将按照字典中的值来排序,并且输出键和对应的值。输出结果应该是:
```
date 1
banana 2
apple 3
cherry 4
```
其中,lambda函数用于指定排序的关键字,即按照字典中的值来排序。sorted函数返回一个排序后的元组列表,每个元组包含键和对应的值。遍历这个排序后的元组列表,并输出键和对应的值即可。
相关问题
python字典按值排序输出键_python中字典按键、值进行排序
对于字典按值排序后输出键的问题,可以通过以下的代码实现:
```python
# 定义原始字典
dict1 = {'a': 2, 'b': 4, 'c': 1, 'd': 3}
# 将原始字典转换为元组列表
list1 = list(dict1.items())
# 按照值对元组列表进行排序
list1.sort(key=lambda x: x[1])
# 输出排序后的键
for i in list1:
print(i[0])
```
这段代码将原始字典转换为元组列表,按照值对元组列表进行排序,最后输出排序后的键。其中,`lambda x: x[1]` 表示按照元组的第二个元素进行排序(即字典的值)。如果需要按照键进行排序,只需要将 `lambda x: x[1]` 改为 `lambda x: x[0]` 即可。
python对字典中的值排序 但输出键
可以使用 `sorted` 函数和 `items` 方法来对字典中的键值对进行排序。然后,可以使用列表推导式将排好序的键转换为列表输出。
例如,假设有一个字典 `my_dict`,其中包含一些键值对:
```python
my_dict = {'apple': 10, 'banana': 5, 'orange': 20}
```
要按值对字典进行排序,可以使用以下代码:
```python
sorted_dict = sorted(my_dict.items(), key=lambda x: x[1])
```
这将返回一个列表,其中包含按值排序的元组,如下所示:
```
[('banana', 5), ('apple', 10), ('orange', 20)]
```
然后,可以使用列表推导式将排好序的键提取出来,如下所示:
```python
sorted_keys = [x[0] for x in sorted_dict]
```
这将返回一个列表,其中包含按值排序的键,如下所示:
```
['banana', 'apple', 'orange']
```
因此,完整的代码如下:
```python
my_dict = {'apple': 10, 'banana': 5, 'orange': 20}
sorted_dict = sorted(my_dict.items(), key=lambda x: x[1])
sorted_keys = [x[0] for x in sorted_dict]
print(sorted_keys)
```
输出结果为:
```
['banana', 'apple', 'orange']
```
阅读全文