【发布时间】:2020-03-02 11:14:29
【问题描述】:
如何按值查找用户的排名。
data = [
{
"playerId": 2,
"value": 196763.8
},
{
"playerId": 3,
"value": 196763.8
},
{
"playerId": 44,
"value": 196764
}
]
我试过了:
index = [ x['playerId'] for x in data ].index(3) #3 playerId
rank = index+1
我得到的排名是:2
playerId 2 和 3 的 Rank 应为 1(因为值相同 196763.8 ),而 playerId 44 的 rank 将为 2
【问题讨论】:
-
您的列表没有以任何方式排序,即使它没有代码来检查并列分数。此外列表是 0 索引
-
请尝试排序列表 newlist = sorted(data, key=lambda k: k['value'],reverse=True)
-
这能回答你的问题吗? How to sort List of dict
-
分数低的玩家是第一名?
-
这是一个有趣的问题,不应该被关闭。
标签: python python-3.x pandas