按另一个列表对词典列表进行排序。
我有一个带字典的列表(IN
),我想按另一个列表(sortValue
)排序。在
IN = [{
"id": "a",
"val": "Value",
"val1": "Value1"
},
{
"id": "b",
"val": "Value",
"val1": "Value1"
},
{
"id": "c",
"val": "Value",
"val1": "Value1"
}]
sortValue = ['b','c','a']
我想要输出
^{pr2}$怎么弄到这样的东西?在
我试过:
OUT = []
for xx in sortValue:
for x in IN:
if x['id'] == xx:
OUT.append(x)
print OUT
del OUT
但dict的价值是复杂的。 [{'val1':'Value1','id':'b','val':'Value'},{'val1':'Value1','id':'c','val':'Value'},{'val1':'Value1','id':'a','val':'Value'}]
构建一个字典,将ID映射到具有该ID的字典,然后查看
sortValue
列表,为每个ID值选择字典:也可以使用
sorted
函数的key
参数。在您的例子中,您需要列表中每个项目的id
的sortValue索引:更多关于使用python在其wiki上排序的信息。在
相关问题 更多 >
编程相关推荐