Tri numérique des chaînes
Le tri d'une liste de chaînes contenant des caractères numériques en Python peut conduire à des résultats inattendus s'il n'est pas géré correctement. Pour obtenir le comportement de tri souhaité, il est nécessaire de convertir les chaînes en valeurs numériques avant d'appliquer la fonction de tri.
Dans l'exemple fourni, l'utilisateur tente de trier une liste de « nombres » de chaînes en les convertissant en entiers à l’aide d’une boucle. Cependant, cela convertit uniquement les chaînes en entiers dans la boucle et la liste originale1 reste inchangée.
Pour trier correctement la liste numériquement, suivez ces étapes :
list1 = ["1", "10", "3", "22", "23", "4", "2", "200"] list1 = [int(x) for x in list1]
list1.sort()
Cela produira la liste triée : ['1', '2', '3', '4', '10', '22', '23', '200'].
Alternativement, une fonction clé peut être utilisée pour trier la liste en fonction de la valeur numérique de chaque chaîne sans les convertir en nombres entiers :
list1 = ["1", "10", "3", "22", "23", "4", "2", "200"] list1.sort(key=int)
Cela entraînera le même ordre de tri qu'avant.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!