Eine Liste alphabetisch sortieren in Python

Manav Narula 17 Februar 2021
  1. Verwenden Sie die Methode sort(), um eine Liste in Python alphabetisch zu sortieren
  2. Verwenden Sie die Funktion sorted(), um eine Liste in Python alphabetisch zu sortieren
  3. Schnellsortieralgorithmus verwenden, um eine Liste in Python alphabetisch zu sortieren
Eine Liste alphabetisch sortieren in Python

In diesem Tutorial wird gezeigt, wie man eine Liste, die Zeichenketten enthält, mit den Funktionen sort() und sorted() alphabetisch sortiert und den Quick-Sort-Algorithmus verwendet.

Sowohl sort() als auch sorted() können die gleiche Funktion ausführen, wobei der Hauptunterschied zwischen ihnen darin besteht, dass die Funktion sort() die ursprüngliche Liste sortiert, während die Funktion sorted() eine neue Liste erstellt.

Verwenden Sie die Methode sort(), um eine Liste in Python alphabetisch zu sortieren

Die Methode sort() des List-Objekts wird verwendet, um eine Liste zu sortieren. Standardmäßig sortiert sie die Liste in aufsteigender Reihenfolge. Ein Beispiel:

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]
my_list.sort()
print(my_list)

Ausgabe:

['Baron', 'Jack', 'Jay', 'Mark', 'Sam']

Um die Liste in umgekehrter Reihenfolge zu sortieren, können wir den Parameter reverse verwenden und ihn auf True setzen. Standardmäßig ist er auf False gesetzt. Ein Beispiel:

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]
my_list.sort(reverse=True)
print(my_list)

Ausgabe:

['Sam', 'Mark', 'Jay', 'Jack', 'Baron']

Beachten Sie, dass sich die Reihenfolge der sortierten Liste umgedreht hat. Wir können auch die Bedingung für die Sortierung mit dem Parameter key angeben. Im folgenden Code sortieren wir die Liste basierend auf der Länge der Zeichenkette jedes Elements in aufsteigender Reihenfolge:

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]
my_list.sort(key=len)
print(my_list)

Ausgabe:

['Sam', 'Jay', 'Mark', 'Jack', 'Baron']

Verwenden Sie die Funktion sorted(), um eine Liste in Python alphabetisch zu sortieren

Die Funktion sorted() sortiert eine Liste ebenfalls in der gewünschten Reihenfolge, aber sie erstellt eine neue Liste und verändert die ursprüngliche Liste nicht. Um eine Liste alphabetisch aufsteigend zu sortieren, übergeben wir sie einfach wie unten gezeigt an die Funktion.

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]
sorted_list = sorted(my_list)
print(sorted_list)

Ausgabe:

['Baron', 'Jack', 'Jay', 'Mark', 'Sam']

Ähnlich wie bei der Methode sort() können wir auch in absteigender Reihenfolge sortieren, indem wir den Parameter reverse verwenden. Ein Beispiel:

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]
sorted_list = sorted(my_list, reverse=True)
print(sorted_list)

Ausgabe:

['Sam', 'Mark', 'Jay', 'Jack', 'Baron']

Wir können auch den Parameter key verwenden, um die Bedingung für die Sortierung anzugeben, wie wir es mit der Funktion sort() getan haben. Beispiel:

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]
sorted_list = sorted(my_list, reverse=True, key=len)
print(sorted_list)

Ausgabe:

['Baron', 'Mark', 'Jack', 'Sam', 'Jay']

Schnellsortieralgorithmus verwenden, um eine Liste in Python alphabetisch zu sortieren

Wir können auch den Quick-Sort-Algorithmus verwenden, um eine Liste zu sortieren. Diese Methode mag unkonventionell sein, aber es ist erwähnenswert, dass andere Sortierverfahren wie Merge-Sort, Selection-Sort, Insertion-Sort, Heap-Sort und Bubble-Sort dies ebenfalls erreichen können. Der folgende Code zeigt eine Funktion, die die quicksort-Methode zum Sortieren einer Liste in Python implementiert.

my_list = ["Jack", "Sam", "Jay", "Mark", "Baron"]


def quicksort(lst):
    if not lst:
        return []
    return (
        quicksort([x for x in lst[1:] if x < lst[0]])
        + [lst[0]]
        + quicksort([x for x in lst[1:] if x >= lst[0]])
    )


print(quicksort(my_list))

Ausgabe:

['Baron', 'Jack', 'Jay', 'Mark', 'Sam']
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Verwandter Artikel - Python List