À partir d'un commentaire:
Je veux trier chaque ensemble.
C'est facile. Pour tout ensemble s(ou tout autre élément itérable), sorted(s)renvoie une liste des éléments de sdans l'ordre trié:
>>> 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']
Notez que cela sortedvous donne un list, pas un set. C'est parce que tout l'intérêt d'un ensemble, à la fois en mathématiques et dans presque tous les langages de programmation , * est qu'il n'est pas ordonné: les ensembles {1, 2}et {2, 1}sont le même ensemble.
Vous ne voulez probablement pas vraiment trier ces éléments sous forme de chaînes, mais sous forme de nombres (donc 4.918560000 viendra avant 10.277200999 plutôt qu'après).
La meilleure solution est le plus susceptible de stocker les nombres sous forme de nombres plutôt que de chaînes en premier lieu. Mais sinon, il vous suffit d'utiliser une keyfonction:
>>> sorted(s, key=float)
['0.000000000', '0.009518000', '0.018384000', '0.030810999', '4.918560000', '10.277200999']
Pour plus d'informations, consultez le HOWTO de tri dans la documentation officielle.
* Voir les commentaires pour les exceptions.