logo

Python gesorteerd() Functie

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.