Уведомления

Группа в Telegram: @pythonsu

#1 Май 15, 2014 17:10:41

ingfa_1981
Зарегистрирован: 2014-01-25
Сообщения: 200
Репутация: +  1  -
Профиль   Адрес электронной почты  

Как отсортировать список по элементам вложенных списков (один из элементов дата и время)

Уважаемые форумчане, бью голову третий день. Как отсортировать список по элементам вложенных списков (один из элементов дата и время)?

spisok_s_dannimi = [[3,7000,'nazvanie1','22-04-2014-15-30', 10.00],[3,7001,'nazvanie1','22-04-2014-16-00', 10.00],[10,7010,'nazvanie2','23-04-2014-16-00', 10.00],[10,7008,'nazvanie2','23-04-2014-16-00', 10.00],[10,7008,'nazvanie2','23-04-2014-15-00', 10.00]]

Условие такое сначала отсортировать по элементу 0 вложенного списка, потом все что получилось отсортировать по элементу 1 вложенного списка, и уже все что получилось отсортировать по дате, то есть по элементу 2 вложенного списка.
должно получиться вот так.

spisok_s_dannimi = [[3,7000,'nazvanie1','22-04-2014-15-30', 10.00],[3,7001,'nazvanie1','22-04-2014-16-00', 10.00], [10,7008,'nazvanie2','23-04-2014-15-00', 10.00] [10,7008,'nazvanie2','23-04-2014-16-00', 10.00]б[10,7010,'nazvanie2','23-04-2014-16-00', 10.00]] 

Отредактировано ingfa_1981 (Май 15, 2014 17:11:23)

Офлайн

#2 Май 15, 2014 17:40:41

MindHatter
Зарегистрирован: 2014-05-09
Сообщения: 20
Репутация: +  3  -
Профиль   Отправить e-mail  

Как отсортировать список по элементам вложенных списков (один из элементов дата и время)

Так чем не сойдет обычный sort()? он и так поэлементно отсортирует

но чтоб наверняка, воспользуйся сортировкой по ключу. В твоем случае

spisok_s_dannimi.sort(key=lambda x: (x[0], x[1], x[2], x[3], x[4]))

Отредактировано MindHatter (Май 15, 2014 17:48:08)

Офлайн

#3 Май 15, 2014 20:07:37

ingfa_1981
Зарегистрирован: 2014-01-25
Сообщения: 200
Репутация: +  1  -
Профиль   Адрес электронной почты  

Как отсортировать список по элементам вложенных списков (один из элементов дата и время)

MindHatter
Так чем не сойдет обычный sort()? он и так поэлементно отсортируетно чтоб наверняка, воспользуйся сортировкой по ключу. В твоем случае

А как это работает?

Офлайн

#4 Май 16, 2014 14:12:24

MindHatter
Зарегистрирован: 2014-05-09
Сообщения: 20
Репутация: +  3  -
Профиль   Отправить e-mail  

Как отсортировать список по элементам вложенных списков (один из элементов дата и время)

Почитай старый добрый хабр (с небольшим редизайном)

P.S.

ingfa_1981
(один из элементов дата и время)?

Увы но для питона '22-04-2014-15-30' не дата и время, а обычная строка.

Отредактировано MindHatter (Май 16, 2014 15:05:56)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version