Как работаютoperator.itemgetter() и sort()?Python

Программы на Python
Anonymous
Как работаютoperator.itemgetter() и sort()?

Сообщение Anonymous »

У меня есть следующий код:

Код: Выделить всё

# initialize
a = []

# create the table (name, age, job)
a.append(["Nick", 30, "Doctor"])
a.append(["John",  8, "Student"])
a.append(["Paul", 22, "Car Dealer"])
a.append(["Mark", 66, "Retired"])

# sort the table by age
import operator
a.sort(key=operator.itemgetter(1))

# print the table
print(a)
Он создает таблицу 4x3, а затем сортирует ее по возрасту. Мой вопрос: что именно делает key=operator.itemgetter(1)? Возвращает ли функцияoperator.itemgetter значение элемента? Почему я не могу просто ввести там что-то вроде key=a[x][1]? Или я могу? Как можно с помощью оператора напечатать определенное значение формы, например 3x2, которое равно 22?

[*]Как именно Python разобрать стол? Могу ли я выполнить обратную сортировку?

[*]Как я могу отсортировать его на основе двух столбцов, например, первый возраст, а затем, если возраст одинаковый b имя?

[*]Как это сделать без оператора?



Подробнее здесь: https://stackoverflow.com/questions/185 ... -sort-work

Вернуться в «Python»