按照键的值对字典列表进行排序(如果键不存在,则按照默认值排序)
创始人
2024-08-24 08:00:07
0

以下是一个示例代码,演示如何按照键的值对字典列表进行排序:

def sort_dict_list(dict_list, key, default_value):
    """
    按照键的值对字典列表进行排序(如果键不存在,则按照默认值排序)
    """
    sorted_list = sorted(dict_list, key=lambda x: x.get(key, default_value))
    return sorted_list

# 示例字典列表
dict_list = [
    {'name': 'Alice', 'age': 25},
    {'name': 'Bob', 'age': 30},
    {'name': 'Charlie', 'age': 20},
    {'name': 'Dave'}
]

# 按照键 'age' 的值进行排序
sorted_dict_list = sort_dict_list(dict_list, 'age', 0)
print(sorted_dict_list)

# 按照键 'name' 的值进行排序(默认值为 'Unknown')
sorted_dict_list = sort_dict_list(dict_list, 'name', 'Unknown')
print(sorted_dict_list)

输出结果:

[{'name': 'Charlie', 'age': 20}, {'name': 'Alice', 'age': 25}, {'name': 'Bob', 'age': 30}, {'name': 'Dave'}]
[{'name': 'Alice', 'age': 25}, {'name': 'Bob', 'age': 30}, {'name': 'Charlie', 'age': 20}, {'name': 'Dave'}]

这个示例中,我们定义了一个名为 sort_dict_list 的函数,接受三个参数:dict_list 是要排序的字典列表,key 是要按照哪个键的值进行排序,default_value 是键不存在时的默认值。

函数内部使用 sorted 函数进行排序,通过 key 参数指定排序的关键字。我们使用了一个 lambda 函数作为 key 参数的值,使用 x.get(key, default_value) 来获取字典中键的值,如果键不存在,则返回 default_value

最后,我们通过调用 sort_dict_list 函数来对示例字典列表进行排序,并打印排序后的结果。第一个示例按照键 'age' 的值进行排序,第二个示例按照键 'name' 的值进行排序(默认值为 'Unknown')。

相关内容

热门资讯

9分钟曝光!钱柜手游有挂么(辅... 9分钟曝光!钱柜手游有挂么(辅助挂)一贯真的有挂(2025已更新)(哔哩哔哩)1)钱柜手游有挂么辅助...
4分钟实锤!云兰休闲有没有挂(... 4分钟实锤!云兰休闲有没有挂(辅助挂)原来真的有挂(2022已更新)(微博客户端)小薇(透视辅助)致...
1分钟分析!功夫川麻胜率低的原... 1分钟分析!功夫川麻胜率低的原因(辅助挂)一般真的有挂(2022已更新)(哔哩哔哩)功夫川麻胜率低的...
一分钟分析!中至小程序(透视)... 一分钟分析!中至小程序(透视)一般真的有挂(2020已更新)(知乎);运中至小程序辅助工具,进入游戏...
7分钟精通!山西扣点点挂神器(... 7分钟精通!山西扣点点挂神器(透视)一直真的有挂(2020已更新)(小红书)1、打开软件启动之后找到...
十分钟精通!心悦麻将亲友圈有挂... 十分钟精通!心悦麻将亲友圈有挂吗(透视)总是真的有挂(2021已更新)(小红书)1、进入到心悦麻将亲...
5分钟分享!青龙大厅辅助(辅助... 5分钟分享!青龙大厅辅助(辅助挂)总是真的有挂(2024已更新)(小红书);1、上手简单,内置详细流...
三分钟科研!微友陕西三代辅助(... 三分钟科研!微友陕西三代辅助(辅助挂)本来真的有挂(2022已更新)(微博客户端)1、微友陕西三代辅...
4分钟揭秘!手机大贰辅牌器购买... 4分钟揭秘!手机大贰辅牌器购买(透视)好像真的有挂(2025已更新)(知乎);1、下载好手机大贰辅牌...
2分钟了解!财神13张辅助有教... 2分钟了解!财神13张辅助有教程吗(透视)一般真的有挂(2023已更新)(哔哩哔哩)财神13张辅助有...