與previous questions略有不同。我在這裏找到: front_Ar
是具有score
屬性的對象的列表。獲取對象列表中具有最大屬性值的對象列表
我想獲得最高分的所有對象的列表。 我曾嘗試:
maxind = []
maxInd.append(max(front_Ar, key=attrgetter('score')))
其中僅存儲一個對象(推測它找到的第一個)。 任何想法如何做到這一點?
與previous questions略有不同。我在這裏找到: front_Ar
是具有score
屬性的對象的列表。獲取對象列表中具有最大屬性值的對象列表
我想獲得最高分的所有對象的列表。 我曾嘗試:
maxind = []
maxInd.append(max(front_Ar, key=attrgetter('score')))
其中僅存儲一個對象(推測它找到的第一個)。 任何想法如何做到這一點?
找到最高分,然後再篩選基於該評分列表:
max_score = max(front_Ar, key=attrgetter('score')).score
max_ind = [obj for obj in front_Ar if obj.score == max_score]
的max()
功能可用於查找值最高分的。
要獲得分數與該值相匹配的對象,您可以像@ juanpa.arrivillaga的回答那樣執行列表理解,或者在列表中使用類似filter()
的內容來僅返回符合條件的項目。
top_score = max(front_Ar, key=attrgetter('score')).score
max_ind = list(filter(lambda x: x.score == top_score, front_Ar))