dict list 按照另一个 list 排序

2019-03-13 13:49:00 +08:00
 wonder1z

请教大神,有什么快速的排序方法吗 [{"a":3,"b":"ggg"},{"a":1,"b":"fff"},{"a":2,"b":"eee"}] 按照 [2,1,3] 排序 输出[{"a":2,"b":"eee"},{"a":1,"b":"fff"},{"a":3,"b":"ggg"}]

1578 次点击
所在节点    Python
3 条回复
myyou
2019-03-13 14:07:58 +08:00
sorted([{"a":3,"b":"ggg"},{"a":1,"b":"fff"},{"a":2,"b":"eee"}], key=lambda x: [2, 1, 3].index(x["a"]))
wonder1z
2019-03-13 14:14:41 +08:00
@myyou 牛逼,多谢
wqzjk393
2019-03-13 14:17:56 +08:00
有个比较特别的方法。读进 pandas.dataframe。df = pandas.dataframe(values=dict.value,names=dict.keys) df=df.sorted(by='a'),然后再包装成一个字典返回去

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/544116

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX