Python整理一个复杂的字典
我列了一张单子 数据=[{类型:房屋,成本:500,额外:假,订单:1}, {类型:公寓,成本:40,额外:假,订单:4}, {类型:房屋,成本:120,额外:正确,订单:2}, {类型:房屋,成本:800,额外:正确,订单:3}] 并希望按顺序键对数据进行排序Python整理一个复杂的字典,python,dictionary,Python,Dictionary,我列了一张单子 数据=[{类型:房屋,成本:500,额外:假,订单:1}, {类型:公寓,成本:40,额外:假,订单:4}, {类型:房屋,成本:120,额外:正确,订单:2}, {类型:房屋,成本:800,额外:正确,订单:3}] 并希望按顺序键对数据进行排序 你会怎么处理 您不是在对词典进行排序,而是在对词典列表进行排序 试试这个: data = [{"type":"house", "cost":500, "extra":False, "order":1}, {"type":"condo"
你会怎么处理 您不是在对词典进行排序,而是在对词典列表进行排序 试试这个:
data = [{"type":"house", "cost":500, "extra":False, "order":1},
{"type":"condo", "cost":40, "extra":False, "order":4},
{"type":"house", "cost":120, "extra":True, "order":2},
{"type":"house", "cost":800, "extra":True, "order":3}]
length = len (data)
for index1 in range (length) :
for index2 in range (length) :
if data [index2]['order'] > data [index1]['order'] :
data [index2], data [index1] = data [index1], data [index2]
print (data)
如果要对词典列表进行排序,请尝试以下操作:
数据=[
{类型:house,成本:500,额外:False,订单:1},
{类型:公寓,成本:40,额外:假,订单:4},
{类型:房屋,成本:120,额外:正确,订单:2},
{类型:房屋,成本:800,额外:正确,订单:3},
]
data.sortkey=lambda x:x[order]按order的值排序
如果您想对列表中每个字典中的键进行排序,则必须使用OrderedDict。现在开始:这是否回答了您的问题?