python 排名函数
Python中没有内置的排名函数,可以使用如下方法来实现:
1. 使用排序算法对数组进行排序,并输出每个元素在排序后的位置即可得到排名。
例如:
python
def ranking(arr):
n = len(arr)
sorted_arr = sorted(arr)
ranks = [0] * n
for i in range(n):
python index函数 rank = sorted_arr.index(arr[i]) + 1
ranks[i] = rank
return ranks
arr = [5, 3, 8, 2, 9]
ranks = ranking(arr)
print(ranks) # [3, 2, 5, 1, 6]
2. 使用Python内置的zip函数和sorted函数对数组进行排序,再使用enumerate函数获取每个元素的索引来计算排名。
例如:
python
def ranking(arr):
zipped = zip(arr, range(len(arr)))
sorted_zipped = sorted(zipped)
ranks = [0] * len(arr)
for i, (value, index) in enumerate(sorted_zipped):
ranks[index] = i + 1
return ranks
arr = [5, 3, 8, 2, 9]
ranks = ranking(arr)
print(ranks) # [3, 2, 5, 1, 6]
以上是两种常用的计算排名的方法,可以根据具体情况选择使用。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论