如何在python中的字典列表的字典中对数据进行排序?

优素福

请帮我。我有这样的数据集:

 my_dict = { 'project_1' : [{'commit_number':'14','name':'john'},
                            {'commit_number':'10','name':'steve'}],
             'project_2' : [{'commit_number':'12','name':'jack'},
                            {'commit_number':'15','name':'anna'},
                            {'commit_number':'11','name':'andy'}]
           }

我需要根据提交编号按降序对数据集进行排序,并通过使用 python 忽略项目名称将其放入新列表中。预期的列表将是这样的:

ordered_list_of_dict = [{'commit_number':'15','name':'anna'},
                        {'commit_number':'14','name':'john'},
                        {'commit_number':'12','name':'jack'},
                        {'commit_number':'11','name':'andy'},
                        {'commit_number':'10','name':'steve'}]

非常感谢你帮助我。

cs95
  1. my_dict的值提取为列表列表*
  2. 将每个子列表连接在一起( flatten dict_values)以形成一个平面列表
  3. 对每个元素进行排序 commit_number

*python2 上的列表列表。在python3上,dict_values返回一个对象。

from itertools import chain

res = sorted(chain.from_iterable(my_dict.values()), 
             key=lambda x: x['commit_number'], 
             reverse=True)

[{'commit_number': '15', 'name': 'anna'},
 {'commit_number': '14', 'name': 'john'},
 {'commit_number': '12', 'name': 'jack'},
 {'commit_number': '11', 'name': 'andy'},
 {'commit_number': '10', 'name': 'steve'}]

在 python2 上,你会使用dict.itervalues而不是达到dict.values同样的效果。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Python中的字典中对列表进行排序?

如何在列表中构建字典数据?

在Python中,给定字典中包含值列表的字典,如何根据该列表中的项目数量对字典进行排序?

在Python 3中对字典列表进行排序

在Python列表中对嵌套字典进行排序?

创建表并根据字典中的列表对数据进行排序

如何使用Pandas在Python中对字典中的数据进行排序

如何在Python中对字典键进行排序

如何对列表中的字典值进行排序?

如何在python嵌套列表中对数据进行分类

在列表中对Python字典对象进行排序

如何在Python中对字典列表进行分组?

如何在Python中按字典值对字典列表进行部分排序

如何在Python中按Key对字典进行排序

Python-如何基于字典对数组中的值进行排序和替换

如何在Python中对嵌套字典进行2次排序?

如何对列表中给出的字典进行排序

如何在字典中对字典列表进行排序并在python中覆盖它

如何在python中的字典元素列表中访问字典?

如何在python中对字典val和键进行排序

在python中对字典进行排序

如何在python中对字典的字典进行排序

如何在字典中对列表进行排序

如何在精灵中对字典进行排序

Python:如何对嵌套字典中的特定列表进行排序?

如何根据 Python 中的日期时间对字典列表进行排序

在字典中对列表进行排序

如何在Python中对字典中的元素进行排序

如何在python中的字典列表中读取字典