python通过公共键对字典排序的算法代码
时间: 2023-05-13 21:04:57 浏览: 63
可以使用sorted()函数和lambda表达式来实现对字典按照公共键排序的算法代码,示例代码如下:
```python
my_dict = {'a': 3, 'b': 1, 'c': 2}
sorted_dict = sorted(my_dict.items(), key=lambda x: x[0])
print(sorted_dict)
```
这段代码会输出按照字典键排序后的结果:
```
[('a', 3), ('b', 1), ('c', 2)]
```
其中,sorted()函数的第一个参数是待排序的字典的items()方法返回的键值对列表,第二个参数是一个lambda表达式,表示按照键值对中的键进行排序。
相关问题
python字典中对值进行冒泡排序算法
以下是对python字典中值进行冒泡排序的算法示例:
```python
def bubble_sort_dict_values(dictionary):
# 将字典中的值转换为列表
values_list = list(dictionary.values())
# 冒泡排序
n = len(values_list)
for i in range(n):
for j in range(0, n-i-1):
if values_list[j] > values_list[j+1]:
values_list[j], values_list[j+1] = values_list[j+1], values_list[j]
# 将排序后的值重新赋值给字典的值
for i, key in enumerate(dictionary.keys()):
dictionary[key] = values_list[i]
return dictionary
```
这个函数接受一个字典作为参数,并对其值进行冒泡排序。它首先将字典的值转换为列表,然后对列表进行排序。排序完成后,将排序后的值重新赋值给字典的值。最后,函数返回排序后的字典。
以下是一个示例,演示如何使用此函数:
```python
my_dict = {'apple': 3, 'banana': 2, 'orange': 1, 'pear': 4}
sorted_dict = bubble_sort_dict_values(my_dict)
print(sorted_dict)
```
输出结果为:
```
{'orange': 1, 'banana': 2, 'apple': 3, 'pear': 4}
```
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']
```