По общему признанию, не очень броский заголовок.
С учетом ввода:
input = [("baz", 3), ("bar", 2), ("foo", 1), ("qux", 4)]
Какой лучший способ получить:
["foo", "bar", "baz", "qux"]
Я мог бы реализовать это,например, как:
map(lambda x: x[0], sorted(input, key=lambda x: x[1]))
Повторение дважды по одному и тому же набору данных кажется расточительным.Я задавался вопросом, есть ли лучший способ сказать функции сортировки, чтобы она выбирала первое поле (вместо всей записи), пока оно сортируется по второму полю.