Я знаю, что это звучит тривиально, но я не осознавал, что функция sort()
в Python была странной. У меня есть список «чисел», которые на самом деле представлены в виде строки, поэтому я сначала преобразовываю их в целые, а затем пытаюсь выполнить сортировку.
list1=["1","10","3","22","23","4","2","200"]
for item in list1:
item=int(item)
list1.sort()
print list1
Дает мне:
['1', '10', '2', '200', '22', '23', '3', '4']
То, что я хочу, это
['1','2','3','4','10','22','23','200']
Я искал некоторые алгоритмы, связанные с сортировкой числовых наборов, но обнаружил, что все они включают сортировку буквенно-цифровых наборов.
Я знаю, что это, вероятно, не проблема, но Google и мой учебник не предлагают ничего более или менее полезного, чем функция .sort()
.