如何在字典中仅对一个keyvalue列表中的项进行排序

2024-04-26 08:00:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一本字典(可以编词条)

mystuff = {'candy': 10, 'purse' : ['phone', 'gum', 'bracelet'],'kit': ['bandages', 'tape']}

我只想按字母顺序对“钱包”键中的项目进行排序。我如何做到这一点而不改变其他一切的顺序

我希望输出是

mystuff = {'candy': 10,'purse' : ['bracelet', 'gum', 'phone'],'kit' : ['bandages', 'tape']}

Tags: 项目字典顺序字母phonekit钱包词条
1条回答
网友
1楼 · 发布于 2024-04-26 08:00:16

正如其他人所指出的,您可以就地执行my_candy['purse'].sort()。但这将改变现有数据

您还可以使用dict comprehension来避免现有数据的突变,如下所示:

def new_value(key, value):
    return sorted(value) if key == 'purse' else value


transformed = {
    key: new_value(key, value)
    for key, value
    in mystuff.items()
}

相关问题 更多 >