Пакет сборки NPM после установки

.sort() и .reverse() изменить список на месте и вернуться None См. документацию изменчивой последовательности :

Методы sort() и reverse() изменяют список для экономии пространства при сортировке или изменении большого списка. Чтобы напомнить вам, что они работают по побочному эффекту, они не возвращают отсортированный или реверсивный список.

blockquote>

Сделайте это вместо:

a.sort()
print(a)
a.reverse()
print(a)

или используйте кнопку sorted() и reversed() .

print(sorted(a))               # just sorted
print(list(reversed(a)))       # just reversed
print(a[::-1])                 # reversing by using a negative slice step
print(sorted(a, reverse=True)) # sorted *and* reversed

Эти методы возвращают новый список и оставляют исходный вход список нетронутых.

Демо, сортировка и реверсирование на месте:

>>> a = [66.25, 333, 333, 1, 1234.5]
>>> a.sort()
>>> print(a)
[1, 66.25, 333, 333, 1234.5]
>>> a.reverse()
>>> print(a)
[1234.5, 333, 333, 66.25, 1]

И создание новых отсортированных и перевернутых списков:

>>> a = [66.25, 333, 333, 1, 1234.5]
>>> print(sorted(a))
[1, 66.25, 333, 333, 1234.5]
>>> print(list(reversed(a)))
[1234.5, 1, 333, 333, 66.25]
>>> print(a[::-1])
[1234.5, 1, 333, 333, 66.25]
>>> print(sorted(a, reverse=True))
[1234.5, 333, 333, 66.25, 1]
>>> a  # input list is untouched
[66.25, 333, 333, 1, 1234.5]

0
задан Hongarc 16 February 2019 в 11:18
поделиться