2016-02-04 14 views
2

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

list = [37,-59,4,0,15,-12,9,0] 
+0

Спасибо! для комментариев ур, но я хочу использовать для цикла любую идею? – Fishhy

+0

Вы хотите отсортировать его по убыванию вручную? Или вы хотите взять список, отсортированный по возрастанию, и распечатать его через цикл? – StephenTG

+0

Мне нужно распознать список, чтобы он был в порядке убывания, а затем записать его в финал – Fishhy

ответ

0

Если вам нужен список как в восходящем и нисходящем порядке, вы можете получить список в обратном направлении так:

sorted_list_oldskool[::-1]

Если вам это нужно только в порядке убывания, ответ AMACB является вероятно, самый эффективный.

Если по какой-то причине вы хотите взять существующие сортировки логику и он составить список в порядке убывания, вы должны изменить

if unsorted_list[i] <= sorted_list_oldskool[j]:

в

if unsorted_list[i] >= sorted_list_oldskool[j]:

1

Почему вы не используете встроенную функцию sorted?

>>> unsorted_list = [37,-59,4,0,15,-12,9,0] 
>>> sorted(unsorted_list) 
[-59, -12, 0, 0, 4, 9, 15, 37] 
>>> sorted(unsorted_list,reverse=True) 
[37, 15, 9, 4, 0, 0, -12, -59] 
0

If Я правильно вас понял

print("Old way : ",sorted(sorted_list_oldskool, reverse=True)) 
+0

есть, так или иначе, я могу сделать это, не используя обратное? Thank you1! 1 – Fishhy

+0

Просто избавитесь от ', reverse = True' – AMACB

+0

Он означает, что он не хочет использовать обратный флаг, но все же список будет отменен. –

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