Python gesorteerde() functie retourneert een gesorteerde lijst. Het is niet alleen gedefinieerd voor de lijst en accepteert elke iterabele (lijst, tuple, string, enz.).
Voorbeeld
Python3
print>(>sorted>([>4>,>1>,>3>,>2>]))> |
>
>Uitvoer
[1, 2, 3, 4]>
Python gesorteerd() Functiesyntaxis
gesorteerd (itereerbaar, sleutel, omgekeerd)
Parameters:
- Itereerbaar: reeks (lijst, tupel, tekenreeks) of verzameling (woordenboek, set, bevrorenset) of een andere iterator die moet worden gesorteerd.
- Sleutel (optioneel): Een functie die zou dienen als sleutel of als basis voor soortvergelijking.
- Achteruit (optioneel): Indien True, dan wordt de iterabele in omgekeerde (aflopende) volgorde gesorteerd; standaard is deze ingesteld op False.
Opbrengst: Geeft een lijst terug met elementen in gesorteerde volgorde.
Hoe de gesorteerde () functie in Python te gebruiken?
Het gebruik van de functie sort() is heel eenvoudig. Het is een ingebouwde functie in Python en kan met elke iterabele worden gebruikt. Laten we het beter begrijpen met een voorbeeld:
Voorbeeld:
Python3
# creating a list> counting>=> [>4>,>1>,>5>,>2>,>3>]> #print sorted list> print>(>sorted>(counting))> |
>
>Uitvoer
[1, 2, 3, 4, 5]>
Meer Sorted() Functievoorbeelden
Laten we eens kijken naar enkele gebruiksscenario's van de functie sort():
1. Een Python-lijst sorteren met behulp van de functie sort().
In dit voorbeeld hebben we sortering toegepast op de Python-lijst .
Python3
tekenreekslengte Java
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)> |
>
>Uitvoer
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. Verschillende gegevenstypen sorteren met de functie sort().
In dit voorbeeld hebben we sort() gebruikt voor verschillende gegevenstypen, zoals list, tupel , snaar, woordenboek , set en bevroren set.
Python3
iteratie van de kaart in Java
# 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))> |
>
>Uitvoer
['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. Omgekeerd sorteren met Python sorted()
Een tekenreeks in lexicografisch omgekeerde volgorde sorteren op instelling omgekeerd=Waar in de functie sort().
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))> |
>
>Uitvoer
The original string : geekforgeeks String after reverse sorting : srokkggfeeee>
4. Python gesorteerd() met lambda
Met behulp van sort() binnen de Python lambda-functie.
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))> |
>
>Uitvoer
The original string : geekforgeeks String after reverse sorting : srokkggfeeee>
5. Gesorteerd() in Python met len()
In dit voorbeeld sorteren we de lijst op basis van de lengte. De snaar met de kleinste lengte moet als eerste komen.
Python3
L>=> [>'cccc'>,>'b'>,>'dd'>,>'aaa'>]> print>(>'Normal sort :'>,>sorted>(L))> print>(>'Sort with len :'>,>sorted>(L, key>=>len>))> |
>
>Uitvoer
Normal sort : ['aaa', 'b', 'cccc', 'dd'] Sort with len : ['b', 'dd', 'aaa', 'cccc']>
De sleutel kan ook door de gebruiker gedefinieerde functies als waarde aannemen voor de sorteerbasis.
Voorbeeld:
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))> |
>
>Uitvoer
Normal sort : [3, 7, 11, 15] Sorted with key: [7, 15, 3, 11]>
6. Een lijst in oplopende volgorde sorteren met sort()
In my_list hebben we een lijst met gehele waarden. Vervolgens gebruiken we de gesorteerde functie om de lijst in oplopende volgorde te sorteren. De gesorteerde functie neemt de te sorteren iterabele als eerste argument en retourneert een nieuwe lijst die de gesorteerde elementen bevat.
In my_string hebben we een string. Vervolgens gebruiken we de sorteerfunctie om de tekens in de string in oplopende volgorde te sorteren. De gesorteerde functie behandelt de tekenreeks als een iterabele reeks tekens en retourneert een nieuwe lijst met de gesorteerde tekens.
In my_tuples hebben we een lijst met tupels die gehele getallen en tekenreeksen bevat. We hebben de gesorteerde functie gebruikt om de lijst te sorteren op basis van het tweede element van elke tuple. Om dit te bereiken hebben we een lambda-functie als sleutelargument aan de gesorteerde functie doorgegeven.
Python3
python soort tupel
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)> |
object in Java-programmering
>
>Uitvoer
[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. Een lijst met woordenboeken sorteren op een specifieke sleutel met behulp van sort()
In dit voorbeeld sorteren we de lijst met woordenboeken met een specifieke sleutel.
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)> |
>
>Uitvoer
[{'name': 'Alice', 'age': 18}, {'name': 'John', 'age': 20}, {'name': 'Bob', 'age': 22}]> 8. Een lijst met aangepaste objecten sorteren
In dit voorbeeld maken we een aangepaste klasse met de naam Person met twee instantievariabelen, naam en leeftijd, en maken we drie objecten van de klasse Person en voegen we objecten in lijsten in. We gebruiken de gesorteerde functie die de objecten van de persoon sorteert.
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)> |
>
>Uitvoer
[Person(name='Alice', age=18), Person(name='John', age=25), Person(name='Bob', age=30)]>
We hebben de definitie, syntaxis en voorbeelden van de functie sort() in Python besproken. Ik hoop dat dit je vraag heeft beantwoord over het gebruik van de gesorteerde functie in Python?.
de functie sort() moet niet worden verward met de sort()-lijstmethode, omdat ze verschillend zijn.
Ik hoop dat dit artikel je heeft geholpen bij het begrijpen van de sorteer()-functie in Python.