def _sort_by_score(scoring, items_list):
    num_items = len(items_list)

def score(entry):
    return scoring(num_items, entry[0])
return [item for position, item in sorted(enumerate(items_list), key=score)]
В Python частичное применение функции (каррирование) по сравнению с явным определением функции