Уведомления

Группа в Telegram: @pythonsu

#1 Июль 26, 2009 03:36:09

test157
От:
Зарегистрирован: 2009-02-25
Сообщения: 54
Репутация: +  0  -
Профиль   Отправить e-mail  

Объясните кусок из мануала касательно функции sorted?

в мануале по питону, касательно сортировке есть вот такой абзац:

If the invocation of key returns a tuple, second and subsequent items in the tuple will be treated as sub-keys in the same way that Python generally sorts tuples:

>>> L = [('d', 2), ('a', 4), ('b', 3), ('c', 2)]
>>> sorted(L, key=lambda x:(x[1], x[0]))
[('c', 2), ('d', 2), ('b', 3), ('a', 4)]
может кто нить объяснить, правильно ли я его понимаю - что если из лямбды в параметре key возвращать тупл с несколькими элементами, то ПИТОН будет сортировать учитывая их в той последовательности в какой они возвращаются? т.е. в данном примере вначале идет сортировка по первому параметру x, после по параметру x - я так понимаю что их может быть больше двух - или вобще один? как бы работает то как я тут описал сейчас - но сама фраза с subsequernt items и treated as sub-keys посеяла ложку сомнения, поэтому хотелось бы еще чьихто слов что так это или нет?

сам мануал вот здесь http://wiki.python.org/moin/HowTo/Sorting



Отредактировано (Июль 26, 2009 03:38:25)

Офлайн

#2 Июль 27, 2009 11:58:59

Viper
От:
Зарегистрирован: 2006-11-08
Сообщения: 137
Репутация: +  0  -
Профиль   Отправить e-mail  

Объясните кусок из мануала касательно функции sorted?

test157
если из лямбды в параметре key возвращать тупл с несколькими элементами, то ПИТОН будет сортировать учитывая их в той последовательности в какой они возвращаются? т.е. в данном примере вначале идет сортировка по первому параметру x, после по параметру x - я так понимаю что их может быть больше двух
Правильно понимаешь :)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version