Heim >Backend-Entwicklung >Python-Tutorial >Wie sortiere ich eine Liste von Zeichenfolgen numerisch in Python?

Wie sortiere ich eine Liste von Zeichenfolgen numerisch in Python?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-03 13:07:11890Durchsuche

How to Sort a List of Strings Numerically in Python?

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:

  1. Konvertieren Sie alle Zeichenfolgen in die Liste in ganze Zahlen:
list1 = ["1", "10", "3", "22", "23", "4", "2", "200"]
list1 = [int(x) for x in list1]
  1. Wenden Sie die Sortierfunktion auf die Liste an ganze Zahlen:
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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn