📌  相关文章
📜  在 python 中对字典进行排序(1)

📅  最后修改于: 2023-12-03 15:07:46.637000             🧑  作者: Mango

在 Python 中对字典进行排序

在 Python 中对字典进行排序是一种常见的需求。本文将介绍如何使用 Python 的内置函数来对字典进行排序,包括字典按键、值、键值对等多种排序方式。

字典按键排序

我们可以使用 Python 的内置函数 sorted() 来对字典按键进行排序。示例代码如下:

# 创建一个字典
d = {'b': 2, 'a': 1, 'c': 3}
# 对字典按键排序
sorted_d = dict(sorted(d.items(), key=lambda x: x[0]))
print(sorted_d)

输出结果为:

{'a': 1, 'b': 2, 'c': 3}

解释:

  1. 使用 d.items() 将字典转化为一个包含所有键值对的序列。
  2. 调用 sorted() 函数对这个序列进行排序,关键字参数 key 指定了排序的规则,这里是按照每个键值对的第一个元素(即键)进行排序。
  3. 将排序后的序列转化为字典,得到了一个按键排序的新字典。
字典按值排序

我们可以使用 Python 的内置函数 sorted() 来对字典按值进行排序。示例代码如下:

# 创建一个字典
d = {'b': 2, 'a': 1, 'c': 3}
# 对字典按值排序
sorted_d = dict(sorted(d.items(), key=lambda x: x[1]))
print(sorted_d)

输出结果为:

{'a': 1, 'b': 2, 'c': 3}

解释:

  1. 使用 d.items() 将字典转化为一个包含所有键值对的序列。
  2. 调用 sorted() 函数对这个序列进行排序,关键字参数 key 指定了排序的规则,这里是按照每个键值对的第二个元素(即值)进行排序。
  3. 将排序后的序列转化为字典,得到了一个按值排序的新字典。
字典按键值对排序

我们可以使用 Python 的内置函数 sorted() 来对字典按键值对进行排序。示例代码如下:

# 创建一个字典
d = {'b': 2, 'a': 1, 'c': 3}
# 对字典按键值对排序
sorted_d = dict(sorted(d.items(), key=lambda x: (x[0], x[1])))
print(sorted_d)

输出结果为:

{'a': 1, 'b': 2, 'c': 3}

解释:

  1. 使用 d.items() 将字典转化为一个包含所有键值对的序列。
  2. 调用 sorted() 函数对这个序列进行排序,关键字参数 key 指定了排序的规则,这里是按照每个键值对的第一个元素(即键)和第二个元素(即值)进行排序。
  3. 将排序后的序列转化为字典,得到了一个按键值对排序的新字典。
总结

在 Python 中对字典进行排序是一种常见的需求,可以使用 Python 的内置函数 sorted() 来实现。本文介绍了字典按键、值、键值对等多种排序方式的示例代码,希望对你有所帮助。