Я бы сделал это:
Первый список заказов по номеру во вложенном списке. В лямбда-функции я возвращаю значение, которое должно быть использовано для ordenation (2-й элемент вложенного списка):
a = [['A', 0],['B', 0], ['V', 0], ['D', 0], ['E', 0], ['F', 0], ['G', 1], ['H', 1], ['I', 1], ['J', 3], ['K', 0]]
sorted_list = sorted(a, key=lambda n: n[1], reverse=True)
# [['J', 3], ['G', 1], ['H', 1], ['I', 1], ['A', 0], ['B', 0], ['V', 0], ['D', 0], ['E', 0], ['F', 0], ['K', 0]]
При этом я могу нарезать 3 первых элемента:
sorted_list = sorted_list[:3]
# [['J', 3], ['G', 1], ['H', 1]]
И наконец, получить список только с буквой (строка):
[l[0] for l in sorted_list]
# ['J', 'G', 'H']
Все сразу:
[n[0] for n in sorted(a, key=lambda n: n[1], reverse=True)[:3]]