Bir yorumdan:
Her seti sıralamak istiyorum.
Bu kolay. Herhangi bir küme s(veya yinelenebilir herhangi bir şey) için, sorted(s)öğelerinin ssıralı düzende bir listesini döndürür :
>>> s = set(['0.000000000', '0.009518000', '10.277200999', '0.030810999', '0.018384000', '4.918560000'])
>>> sorted(s)
['0.000000000', '0.009518000', '0.018384000', '0.030810999', '10.277200999', '4.918560000']
Unutmayın ki sortedsize a listdeğil, bir set. Bunun nedeni, hem matematikte hem de hemen hemen her programlama dilinde bir kümenin tüm amacı, * sıralı olmamasıdır: kümeler {1, 2}ve {2, 1}aynı küme.
Muhtemelen bu öğeleri dizeler olarak değil, sayılar olarak sıralamak istemezsiniz (bu nedenle 4.918560000, 10.277200999'dan sonra değil, 10.277200999'dan önce gelir).
En iyi çözüm, sayıları ilk etapta dizeler yerine sayılar olarak saklamaktır. Ancak değilse, yalnızca bir keyişlevi kullanmanız gerekir :
>>> sorted(s, key=float)
['0.000000000', '0.009518000', '0.018384000', '0.030810999', '4.918560000', '10.277200999']
Daha fazla bilgi için, resmi belgelerdeki Sıralama NASIL belgesine bakın .
* İstisnalar için yorumlara bakınız.