Strings numerisch sortieren
Das Sortieren einer Liste von Strings mit numerischen Zeichen in Python kann bei unsachgemäßer Handhabung zu unerwarteten Ergebnissen führen. Um das gewünschte Sortierverhalten zu erreichen, ist es notwendig, die Zeichenfolgen in numerische Werte umzuwandeln, bevor die Sortierfunktion angewendet wird.
Im bereitgestellten Beispiel versucht der Benutzer, eine Liste von Zeichenfolgen „Zahlen“ zu sortieren, indem er sie in umwandelt Ganzzahlen mithilfe einer Schleife. Dadurch werden die Zeichenfolgen jedoch nur innerhalb der Schleife in Ganzzahlen konvertiert und die ursprüngliche Liste1 bleibt unverändert.
Um die Liste korrekt numerisch zu sortieren, gehen Sie folgendermaßen vor:
list1 = ["1", "10", "3", "22", "23", "4", "2", "200"] list1 = [int(x) for x in list1]
list1.sort()
Dies erzeugt die sortierte Liste: ['1', '2', '3', '4', '10', '22', '23', '200'].
Alternativ kann eine Tastenfunktion verwendet werden, um die Liste basierend auf dem numerischen Wert jeder Zeichenfolge zu sortieren, ohne sie in umzuwandeln ganze Zahlen:
list1 = ["1", "10", "3", "22", "23", "4", "2", "200"] list1.sort(key=int)
Dies führt zu der gleichen Sortierreihenfolge wie zuvor.
Das obige ist der detaillierte Inhalt vonWie sortiere ich eine Liste von Zeichenfolgen numerisch in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!