Я знаю, що це звучить тривіально, але я не розумів, що sort()функція Python була дивною. У мене є список "чисел", які насправді є строковою формою, тому я спершу перетворюю їх у ints, а потім намагаюся сортувати.
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()функція.
list1. Що ви змусили вас думати, listщо оновлюється?
sorted(mylist)