Функция, указанная в аргументе key
, может возвращать кортеж.Второй элемент кортежа будет использоваться, если есть несколько максимумов для первого элемента.При этом вы можете использовать нужный метод, например, с двумя словарями:
d = {'a' : 5, 'b' : 1, 'c' : 5 }
d_preference = {'a': 1, 'b': 2, 'c': 3}
max(d, key=lambda key: (d[key], d_preference[key]))
# >> 'c'
d_preference = {'a': 3, 'b': 2, 'c': 1}
max(d, key=lambda key: (d[key], d_preference[key]))
# >> 'a'