Eu sei que isso parece trivial, mas eu não percebi que a sort()
função do Python era estranha. Eu tenho uma lista de "números" que estão realmente na forma de seqüência de caracteres, então primeiro os converto em ints e, em seguida, tente uma classificação.
list1=["1","10","3","22","23","4","2","200"]
for item in list1:
item=int(item)
list1.sort()
print list1
Dá-me:
['1', '10', '2', '200', '22', '23', '3', '4']
O que eu quero é
['1','2','3','4','10','22','23','200']
Procurei alguns dos algoritmos associados à classificação de conjuntos numéricos, mas os que encontrei envolvem a classificação de conjuntos alfanuméricos.
Eu sei que este é provavelmente um problema óbvio, mas o google e meu livro não oferecem nada mais ou menos útil do que a .sort()
função.
list1
. O que fez você pensar que list
estava sendo atualizado?
sorted(mylist)