Python 如何在字典中仅对一个键值列表中的项进行排序
我有一本字典,我会编词条Python 如何在字典中仅对一个键值列表中的项进行排序,python,dictionary,nested-lists,Python,Dictionary,Nested Lists,我有一本字典,我会编词条 mystuff = {'candy': 10, 'purse' : ['phone', 'gum', 'bracelet'],'kit': ['bandages', 'tape']} 我只想按字母顺序对“钱包”键中的项目进行排序。我如何做到这一点而不改变其他一切的顺序 我希望输出是 mystuff = {'candy': 10,'purse' : ['bracelet', 'gum', 'phone'],'kit' : ['bandages', 'tape']} 正
mystuff = {'candy': 10, 'purse' : ['phone', 'gum', 'bracelet'],'kit': ['bandages', 'tape']}
我只想按字母顺序对“钱包”键中的项目进行排序。我如何做到这一点而不改变其他一切的顺序
我希望输出是
mystuff = {'candy': 10,'purse' : ['bracelet', 'gum', 'phone'],'kit' : ['bandages', 'tape']}
正如其他人所指出的那样,你可以做我的糖果[钱包],在适当的位置排序。但这将改变现有数据 您还可以使用以下方法来避免现有数据的突变:
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()
}
排序列表是可变的,可以对dict访问返回的值的引用进行排序,就像上面的elomat注释所建议的那样。这是超基本的东西。