【问题标题】:Sorting a list of objects in python on basis of attribute's three different value?根据属性的三个不同值对python中的对象列表进行排序?
【发布时间】:2012-05-18 18:23:54
【问题描述】:

我有一个对象列表。每个对象都有一个属性“优先级”,其值可能是低、中、高。我需要对对象列表进行排序,以便优先级“高”的对象在列表中排在第一位,并且然后是优先级为“中”的对象,最后是优先级为“低”的对象。我知道我可以使用几个 for 循环来做到这一点,但我想要一个快速有效的 Python 解决方案。对不起,但我是 Python 的初学者。

【问题讨论】:

标签: python sorting jquery-ui-sortable


【解决方案1】:

非常感谢。赞成 pythonic 解决方案。

我使用了排序的变体。

sorted(myList, key = lambda x : score[x.priority])

【讨论】:

    【解决方案2】:
    score = dict(high=0, medium=1, low=2)
    mylist.sort(key=lambda x: score[x.priority])
    

    【讨论】:

      猜你喜欢
      • 2021-06-27
      • 1970-01-01
      • 1970-01-01
      • 2022-01-05
      相关资源
      最近更新 更多