У меня есть следующий код:
# 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?
-
Как я мог сделать это без
operator
?