single
Grunderna i Sorted
Svep för att visa menyn
Sortering av data är en vanlig operation när man arbetar med listor i Python. Funktionen sorted är en inbyggd högre ordningens funktion som låter dig sortera valfri iterable och returnerar en ny sorterad lista, medan den ursprungliga datan förblir oförändrad. Du kan använda sorted med eller utan egen sorteringslogik. Som standard ordnar sorted elementen i stigande ordning, men du kan styra sorteringsordningen och kriterierna med dess valfria parametrar.
De viktigaste parametrarna för sorted är:
iterable: datan du vill sortera;key: en valfri funktion som bestämmer vilket värde som ska användas för sortering av varje element;reverse: ett booleskt värde som, om det är satt tillTrue, sorterar datan i fallande ordning.
Anta att du har en lista med siffror och vill sortera dem i stigande ordning. Du kan helt enkelt anropa sorted(numbers). Om du vill sortera siffrorna i fallande ordning kan du ange reverse=True.
12345numbers = [9, 5, 2, 1] # Sorting in reverse order sorted_desc = sorted(numbers, reverse=True) print(sorted_desc)
Du kan också använda parametern key för att sortera mer komplexa datastrukturer, såsom listor av tupler eller ordböcker, genom att ange en funktion som extraherar jämförelsevärdet från varje element.
12345words = ["apple", "kiwi", "banana"] # Sorting by the length of each string sorted_words = sorted(words, key=len) print(sorted_words)
Du kan skicka vilken funktion som helst till parametern key, inklusive en lambda-funktion eller en tidigare definierad funktion. Detta gör sorted till en högre ordningens funktion, eftersom den accepterar en annan funktion som argument. Sortering är inte begränsad till tal eller strängar; du kan sortera komplexa objekt så länge du tillhandahåller en lämplig key-funktion.
Den ursprungliga iterable ändras inte av sorted, den returnerar alltid en ny lista. Om du vill sortera en lista på plats, använd istället metoden list.sort().
Svep för att börja koda
Sortera en lista med tupler efter det andra elementet i varje tuppel med hjälp av funktionen sorted och en namngiven funktion som key-parameter.
- Du har en lista som heter
pairssom innehåller tupler med två heltal. - Definiera en funktion som heter
get_second_elementsom tar en tuppel och returnerar dess andra värde. - Använd funktionen
sortedoch skicka inget_second_elementsomkey-parameter för att sorterapairsefter det andra värdet i varje tuppel. - Spara resultatet i en variabel som heter
sorted_pairs. - Kom ihåg att ta bort
pass.
Lösning
Tack för dina kommentarer!
single
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal