2015-09-17 2 views
-1

У меня есть текстовый файл данных на некоторых людей, для EXA: Harry = 10 David = 11 Голиаф = 13 в каждой новой строкеPython: Как сортировать данные в текстовом файле в порядке убывания?

Я хочу, чтобы сделать это таким образом, что, когда я печать отображает: Голиаф = 13 David = 11 Harry = 10

+1

добавить 'реверс = true' к вашему' sorted' вызова. – tzaman

+1

Пользователь 'reverse = True' аргумент в' sorted'. – Kasramvd

+0

Где я могу добавить его? Я пробовал этот sorted_data = sorted (file.readlines(), key = lambda, reverse = True item: int (item.rsplit ('=', 1) [- 1] .strip())), но не работает: ( – pman

ответ

1

Python's sorted занимает ключевое слово reverse. Просто установите это на True, и все готово.

.: например

>>> print(sorted(range(10), reverse=True)) 
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0] 

Или в вашем случае:

sorted_data=sorted(file.readlines(), reverse=True, key=lambda item: int(item.rsplit('=',1)[-1].strip())) 
+0

@tzaman - Да, извините, что «обратный» - встроенный, который также работал бы, чтобы получить обратный итератор по данным (но не работает только для печати). – mgilson

+0

Да, я слышал об этом но idk, где добавить reverse = True – pman

Смежные вопросы