Python-Funktion sorted() gibt eine sortierte Liste zurück. Es ist nicht nur für die Liste definiert und akzeptiert alle iterierbaren Elemente (Liste, Tupel, Zeichenfolge usw.).
Beispiel
Python3
print> (> sorted> ([> 4> ,> 1> ,> 3> ,> 2> ]))> |
>
>Ausgabe
[1, 2, 3, 4]>
Syntax der Python-Funktion sorted()
sortiert (iterierbar, Schlüssel, umgekehrt)
Parameter:
- Wiederholbar: Sequenz (Liste, Tupel, String) oder Sammlung (Dictionary, Set, Frozenset) oder jeder andere Iterator, der sortiert werden muss.
- Schlüssel (Optional): Eine Funktion, die als Schlüssel oder Grundlage für den Sortiervergleich dienen würde.
- Umkehren (Optional): Bei „True“ wird die Iterable in umgekehrter (absteigender) Reihenfolge sortiert, standardmäßig ist sie auf „False“ gesetzt.
Zurückkehren: Gibt eine Liste mit Elementen in sortierter Reihenfolge zurück.
Wie verwende ich die Funktion sorted() in Python?
Die Verwendung der Funktion sorted() ist sehr einfach. Es handelt sich um eine in Python integrierte Funktion, die mit jeder iterierbaren Funktion verwendet werden kann. Lassen Sie es uns anhand eines Beispiels besser verstehen:
Beispiel:
Python3
# creating a list> counting> => [> 4> ,> 1> ,> 5> ,> 2> ,> 3> ]> #print sorted list> print> (> sorted> (counting))> |
>
>Ausgabe
[1, 2, 3, 4, 5]>
Weitere Beispiele für Sorted()-Funktionen
Schauen wir uns einige Anwendungsfälle der Funktion sorted() an:
1. Sortieren einer Python-Liste mit der Funktion sorted()
In diesem Beispiel haben wir sortiert auf angewendet Python-Liste .
Python3
Mapping im Typoskript
x> => [> 2> ,> 8> ,> 1> ,> 4> ,> 6> ,> 3> ,> 7> ]> > print> (> 'Sorted List returned :'> ,> sorted> (x))> > print> (> 'Reverse sort :'> ,> sorted> (x, reverse> => True> ))> > print> (> '
Original list not modified :'> , x)> |
>
string.format Java
>Ausgabe
Sorted List returned : [1, 2, 3, 4, 6, 7, 8] Reverse sort : [8, 7, 6, 4, 3, 2, 1] Original list not modified : [2, 8, 1, 4, 6, 3, 7]>
2. Sortieren verschiedener Datentypen mit der Funktion sorted()
In diesem Beispiel haben wir sorted() für verschiedene Datentypen wie Liste, Tupel , Schnur, Wörterbuch , Set und Frozen Set.
Python3
# List> x> => [> 'q'> ,> 'w'> ,> 'r'> ,> 'e'> ,> 't'> ,> 'y'> ]> print> (> sorted> (x))> > # Tuple> x> => (> 'q'> ,> 'w'> ,> 'e'> ,> 'r'> ,> 't'> ,> 'y'> )> print> (> sorted> (x))> > # String-sorted based on ASCII translations> x> => 'python'> print> (> sorted> (x))> > # Dictionary> x> => {> 'q'> :> 1> ,> 'w'> :> 2> ,> 'e'> :> 3> ,> 'r'> :> 4> ,> 't'> :> 5> ,> 'y'> :> 6> }> print> (> sorted> (x))> > # Set> x> => {> 'q'> ,> 'w'> ,> 'e'> ,> 'r'> ,> 't'> ,> 'y'> }> print> (> sorted> (x))> > # Frozen Set> x> => frozenset> ((> 'q'> ,> 'w'> ,> 'e'> ,> 'r'> ,> 't'> ,> 'y'> ))> print> (> sorted> (x))> |
>
>Ausgabe
['e', 'q', 'r', 't', 'w', 'y'] ['e', 'q', 'r', 't', 'w', 'y'] ['h', 'n', 'o', 'p', 't', 'y'] ['e', 'q', 'r', 't', 'w', 'y'] ['e', 'q', 'r', 't', 'w', 'y'] ['e', 'q', 'r', 't', 'w', 'y']>
3. Umgekehrte Sortierung mit Python sorted()
Sortieren einer Zeichenfolge in lexikographisch umgekehrter Reihenfolge nach Einstellung umgekehrt=Wahr in der Funktion sorted().
Python3
# Python3 code to demonstrate> # Reverse Sort a String> # using join() + sorted() + reverse> > # initializing string> test_string> => 'geekforgeeks'> > # printing original string> print> (> 'The original string : '> +> str> (test_string))> > # using join() + sorted() + reverse> # Sorting a string> res> => ''.join(> sorted> (test_string, reverse> => True> ))> > # print result> print> (> 'String after reverse sorting : '> +> str> (res))> |
>
>Ausgabe
The original string : geekforgeeks String after reverse sorting : srokkggfeeee>
4. Python Sorted() mit Lambda
Verwendung von sorted() innerhalb der Python-Lambda-Funktion.
Python3
import> functools> test_string> => 'geekforgeeks'> > print> (> 'The original string : '> +> str> (test_string))> # using sorted() + reduce() + lambda> res> => functools.> reduce> (> lambda> x, y: x> +> y,> > sorted> (test_string,> > reverse> => True> ))> print> (> 'String after reverse sorting : '> +> str> (res))> |
>
>Ausgabe
ASCII-Tabelle in C
The original string : geekforgeeks String after reverse sorting : srokkggfeeee>
5. Sorted() in Python mit len()
In diesem Beispiel sortieren wir die Liste nach ihrer Länge. Der String mit der kleinsten Länge sollte zuerst kommen.
Python3
L> => [> 'cccc'> ,> 'b'> ,> 'dd'> ,> 'aaa'> ]> print> (> 'Normal sort :'> ,> sorted> (L))> print> (> 'Sort with len :'> ,> sorted> (L, key> => len> ))> |
>
>Ausgabe
Normal sort : ['aaa', 'b', 'cccc', 'dd'] Sort with len : ['b', 'dd', 'aaa', 'cccc']>
Der Schlüssel kann auch benutzerdefinierte Funktionen als Wert für die Sortiergrundlage annehmen.
Beispiel:
Python3
# Sort a list of integers based on> # their remainder on dividing from 7> def> func(x):> > return> x> %> 7> > L> => [> 15> ,> 3> ,> 11> ,> 7> ]> > print> (> 'Normal sort :'> ,> sorted> (L))> print> (> 'Sorted with key:'> ,> sorted> (L, key> => func))> |
>
>Ausgabe
Normal sort : [3, 7, 11, 15] Sorted with key: [7, 15, 3, 11]>
6. Sortieren einer Liste in aufsteigender Reihenfolge mit sorted()
In my_list haben wir eine Liste ganzzahliger Werte. Anschließend verwenden wir die Sortierfunktion, um die Liste in aufsteigender Reihenfolge zu sortieren. Die sortierte Funktion verwendet das zu sortierende Iterable als erstes Argument und gibt eine neue Liste zurück, die die sortierten Elemente enthält.
In my_string haben wir einen String. Anschließend verwenden wir die Funktion „sortiert“, um die Zeichen in der Zeichenfolge in aufsteigender Reihenfolge zu sortieren. Die sortierte Funktion behandelt die Zeichenfolge als iterierbare Zeichenfolge und gibt eine neue Liste zurück, die die sortierten Zeichen enthält.
In my_tuples haben wir eine Liste von Tupeln, die Ganzzahlen und Zeichenfolgen enthält. Wir haben die Funktion „sortiert“ verwendet, um die Liste basierend auf dem zweiten Element jedes Tupels zu sortieren. Um dies zu erreichen, haben wir eine Lambda-Funktion als Schlüsselargument an die sortierte Funktion übergeben.
Python3
my_list> => [> 3> ,> 1> ,> 4> ,> 1> ,> 5> ,> 9> ,> 2> ,> 6> ,> 5> ]> sorted_list> => sorted> (my_list)> print> (sorted_list)> > my_string> => 'hello, world!'> sorted_string> => sorted> (my_string)> print> (sorted_string)> > my_tuples> => [(> 1> ,> 'one'> ), (> 3> ,> 'three'> ), (> 2> ,> 'two'> ), (> 4> ,> 'four'> )]> sorted_tuples> => sorted> (my_tuples, key> => lambda> x: x[> 1> ])> print> (sorted_tuples)> |
leere Liste Java
>
>Ausgabe
[1, 1, 2, 3, 4, 5, 5, 6, 9] [' ', '!', ',', 'd', 'e', 'h', 'l', 'l', 'l', 'o', 'o', 'r', 'w'] [(4, 'four'), (1, 'one'), (3, 'three'), (2, 'two')]>
7. Sortieren einer Liste von Wörterbüchern nach einem bestimmten Schlüssel mit sorted()
In diesem Beispiel sortieren wir die Liste der Wörterbücher nach einem bestimmten Schlüssel.
Python3
students> => [> > {> 'name'> :> 'John'> ,> 'age'> :> 20> },> > {> 'name'> :> 'Alice'> ,> 'age'> :> 18> },> > {> 'name'> :> 'Bob'> ,> 'age'> :> 22> }> ]> sorted_students> => sorted> (students,key> => lambda> x: x[> 'age'> ])> print> (sorted_students)> |
>
>Ausgabe
[{'name': 'Alice', 'age': 18}, {'name': 'John', 'age': 20}, {'name': 'Bob', 'age': 22}]>
8. Sortieren einer Liste benutzerdefinierter Objekte
In diesem Beispiel erstellen wir eine benutzerdefinierte Klasse namens Person mit zwei Instanzvariablen namens und Alter, erstellen drei Objekte der Person-Klasse und fügen Objekte in Listen ein. Wir verwenden die Sorted-Funktion, die die Objekte der Person sortiert.
Python3
class> Person:> > def> __init__(> self> , name, age):> > self> .name> => name> > self> .age> => age> > > def> __repr__(> self> ):> > return> f> 'Person(name='{self.name}', age={self.age})'> > > people> => [> > Person(> 'John'> ,> 25> ),> > Person(> 'Alice'> ,> 18> ),> > Person(> 'Bob'> ,> 30> )> ]> sorted_people> => sorted> (people, key> => lambda> x: x.age)> print> (sorted_people)> |
>
>Ausgabe
[Person(name='Alice', age=18), Person(name='John', age=25), Person(name='Bob', age=30)]>
Wir haben die Definition, Syntax und Beispiele der Funktion sorted() in Python behandelt. Ich hoffe, dies hat Ihre Frage zur Verwendung einer sortierten Funktion in Python beantwortet.
Die Funktion sort() sollte nicht mit der Listenmethode sort() verwechselt werden, da sie unterschiedlich sind.
Ich hoffe, dieser Artikel hat Ihnen dabei geholfen, die Funktion sorted() in Python zu verstehen.