Ho una lista che ha alcuni numeri di capitolo in stringa. Quando ordino i tasti usando la funzione tasti, mi danno risultati errati.Ordinamento di numeri in formato stringa con Python
keys = ['1.1', '1.2', '2.1', '10.1'] keys.sort() print keys ['1.1', '1.2', '10.1', '2.1']
Come posso utilizzare la funzione di ordinamento per ottenere
['1.1', '1.2', '2.1', '10.1']
Che cosa succede se l'array ha qualcosa di simile?
['1.1.1', '1.2.1', '10.1', '2.1'] -> ['1.1.1','1.2.1','2.1','10.1']
Prosseek prova questo: 'keys.sort (key = float)', ho appena imparato [qui] (http://stackoverflow.com/questions/17474211/how-to-sort-python-list-of-strings -di-numeri/17474264 # 17474264) –