回答

收藏

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

技术问答 技术问答 381 人阅读 | 0 人回复 | 2023-09-11

我有一个字典列表,希望每个项目都按照特定值进行排序。
; f$ ?/ }; a2 e  D  t# o考虑清单:0 a# r" v/ q" X. Z2 D$ c
    - R/ G. A& ~7 v
  • [{'name':'Homer','age{39}name':'Bart','age*code]按 排序时name,应变为:
    + g' T+ y6 H2 Y, c
  • [code][{'name':'Bart','agename':'Homer','age#code]               
    0 E( K3 w. g: K7 o4 E
  •     解决方案:                                                               & L, Q7 s4 e8 C( t
  •                                                                 该sorted()函数接受一个key=参数
    ' {3 q5 O9 z" j, s" y+ O; W
  • [code]newlist = sorted(list_to_be_sorted,key=lambda d: d['name) code]或者,你可以用operator.itemgetter而不是定义函数0 L5 q+ h; d0 z- I) x+ x% v
  • [code]from operator import itemgetternewlist = sorted(list_to_be_sorted,key=itemgetter('name)code]添加以完全起见reverse=True以降序排序[code]newlist = sorted(list_to_be_sorted,key=itemgetter('name'),reverse=True)
    ( R  c. T& g0 W0 r* A" P
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则