You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何对Python字典中的数组进行排序?

如何对Python字典中的数组进行排序?

你有如下原始字典:

my_dict = {'A': [5, 2, 1, 6], 'B': [7, 10, 18, 11]}

想要将其修改为每个列表都升序排列的形式:

my_dict = {'A': [1, 2, 5, 6], 'B': [7, 10, 11, 18]}

可以通过以下两种常用方法实现:

方法1:原地修改原字典(使用sort())

list.sort()方法会直接对原列表进行升序排序(原地操作,无返回值),遍历字典的每个键值对即可完成所有列表的排序:

my_dict = {'A': [5, 2, 1, 6], 'B': [7, 10, 18, 11]}

for key in my_dict:
    my_dict[key].sort()

# 此时原字典已被修改
print(my_dict)

方法2:生成新字典(使用sorted())

如果你不想改动原字典,可以用sorted()函数——它会返回一个新的排序后的列表,结合字典推导式生成新字典:

my_dict = {'A': [5, 2, 1, 6], 'B': [7, 10, 18, 11]}

sorted_dict = {k: sorted(v) for k, v in my_dict.items()}

# 原字典保持不变,新字典为排序后的结果
print(sorted_dict)

两种方法的区别

  • sort():原地修改列表,节省内存,适合不需要保留原列表的场景
  • sorted():返回新列表,原列表不受影响,适合需要保留原始数据的场景

内容的提问来源于stack exchange,提问作者Imran

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 12:27:42