In some ranking people collects points. The challenge is sort by points and calulate position for every person. But remember if two or more persons have same number of points, they should have same position number and sorted by name (name is unique).
For example:
Input structure:
Output should be:
def ranking(people):
    pnt = None
    res = []
    for c, d in enumerate(sorted(people, key=lambda d: (-d['points'], d['name'])), 1):
        if pnt != d['points']:
            pnt = d['points']
            pos = c
        res.append(dict({'position':pos}, **d))
    return res
def ranking(people):
    pnt = None
    res = []
    for c, d in enumerate(sorted(people, key=lambda d: (-d['points'], d['name'])), 1):
        if pnt != d['points']:
            pnt = d['points']
            pos = c
        res.append(dict({'position':pos}, **d))
    return res