14 lines
311 B
Python
14 lines
311 B
Python
from operator import attrgetter
|
|
|
|
|
|
def ranker(iterable, key=attrgetter("points"), rank=0):
|
|
delta = 1
|
|
last = None
|
|
for item in iterable:
|
|
new = key(item)
|
|
if new != last:
|
|
rank += delta
|
|
delta = 0
|
|
delta += 1
|
|
yield rank, item
|
|
last = key(item)
|