Ga naar hoofdinhoud

Een dictionary sorteren op waarde in Python

Leer efficiënte methoden om een dictionary op waarden te sorteren in Python. Ontdek sorteren in oplopende en aflopende volgorde en bonustips voor sorteren op sleutel.
Bijgewerkt 2 okt 2026  · 5 min lezen

Verken met AI

ChatGPTClaudePerplexity

Sorteren is een fundamentele bewerking bij datamanipulatie, en dictionaries in Python vormen daarop geen uitzondering. Of we nu werken aan een complex data-analyseproject of een simpel script, begrijpen hoe je een dictionary efficiënt op waarde sorteert, kan enorm handig zijn.

In dit artikel zetten we de verschillende methoden uiteen om dictionaries in Python op hun waarden te sorteren, zodat we de juiste tools hebben om onze data te ordenen zoals nodig.

Het korte antwoord: hoe sorteer je een dictionary op waarde in Python

Om snel een dictionary op waarde te sorteren, kunnen we de ingebouwde functie van Python .sorted() gebruiken in combinatie met een lambda-functie. Deze methode is eenvoudig en efficiënt voor de meeste use-cases.

student_scores = {
    'Alex': 88,
    'Ben': 75,
    'Cyrus': 93,
    'Denver': 85
}
sorted_by_values = dict(sorted(student_scores.items(), key=lambda item: item[1]))

print(sorted_by_values)

# Expected output:
# {'Ben': 75, 'Denver': 85, 'Alex': 88, 'Cyrus': 93}

Laten we nu een stap terug doen en Python-dictionaries begrijpen en waarom we ze soms moeten sorteren.

Wat zijn Python-dictionaries?

Python-dictionaries zijn een soort datastructuur die data opslaat in sleutel-waardeparen. Ze zijn zeer veelzijdig en bieden snelle opzoek-, invoeg- en verwijderbewerkingen. Hier is een eenvoudig voorbeeld:

student_scores = {
    'Alex': 88,
    'Ben': 75,
    'Cyrus': 93,
    'Denver': 85
}

# No expected output

In de dictionary hierboven zijn de namen van de studenten de sleutels, en hun scores zijn de waarden. 

Dictionaries zijn nuttig in veel scenario’s, bijvoorbeeld wanneer we data efficiënt moeten opslaan en ophalen. Soms is het echter nodig om deze data op waarden in plaats van op sleutels te sorteren—bijvoorbeeld wanneer we studenten op hun scores willen rangschikken.

Hoe sorteer je een dictionary op waarde in Python

Laten we nu de functie .sorted() in Python van dichterbij bekijken en hoe je die specifiek gebruikt om dictionaries op waarde te sorteren.

Hoe sorteer je een dictionary op waarde met .sorted()

De functie .sorted() is een krachtig en flexibel hulpmiddel om te sorteren in Python. Om een dictionary op zijn waarden te sorteren, kunnen we een lambda-functie gebruiken om aan te geven dat er op de waarden van de dictionary gesorteerd moet worden.

student_scores = {
    'Alex': 88,
    'Ben': 75,
    'Cyrus': 93,
    'Denver': 85
}
sorted_by_values = dict(sorted(student_scores.items(), key=lambda item: item[1]))

print(sorted_by_values)

# Expected output: 
# {'Ben': 75, 'Denver': 85, 'Alex': 88, 'Cyrus': 93}

In dit voorbeeld geeft student_scores.items() een view-object terug dat een lijst van tupleparen met sleutel en waarde toont. De functie .sorted() sorteert deze paren op de waarden (item[1]), en dict() zet de gesorteerde lijst weer om naar een dictionary.

Hoe sorteer je een dictionary in aflopende of oplopende volgorde

Standaard sorteert de functie .sorted() in oplopende volgorde. Afhankelijk van de situatie kunnen we dit echter eenvoudig aanpassen naar aflopend of oplopend door de parameter reverse op True of False te zetten.

Hoe sorteer je een dictionary in oplopende volgorde

Zoals genoemd wordt een dictionary standaard in oplopende volgorde gesorteerd met de functie .sorted(). We kunnen ook oplopend sorteren door de parameter reverse op False te zetten.

sorted_by_values_asc = dict(sorted(student_scores.items(), key=lambda item: item[1], reverse=False))
print(sorted_by_values_asc)

# Expected output:
# {'Ben': 75, 'Denver': 85, 'Alex': 88, 'Cyrus': 93}

Hoe sorteer je een dictionary in aflopende volgorde

Als we in aflopende volgorde willen sorteren, kunnen we de parameter reverse op True zetten.

sorted_by_values_desc = dict(sorted(student_scores.items(), key=lambda item: item[1], reverse=True))
print(sorted_by_values_desc)

# Expected output:
# {'Cyrus': 93, 'Alex': 88, 'Denver': 85, 'Ben': 75}

Bonus: hoe sorteer je een dictionary op sleutel in Python

Hoewel dit artikel zich richt op sorteren op waarden, is het ook handig te weten hoe je een dictionary op zijn sleutels sorteert. Dit kan op vergelijkbare wijze met de .sorted()-functie.

sorted_by_keys = dict(sorted(student_scores.items()))
print(sorted_by_keys)

# Expected output:
# {'Alex': 88, 'Ben': 75, 'Cyrus': 93, 'Denver': 85}

Voor aflopende volgorde zet je eenvoudigweg reverse=True:

sorted_by_keys_desc = dict(sorted(student_scores.items(), reverse=True))
print(sorted_by_keys_desc)

# Expected output:
# {'Denver': 85', 'Cyrus': 93, 'Ben': 75, 'Alex': 88}

Conclusie

Een dictionary op zijn waarden sorteren in Python is een veelvoorkomende taak die je eenvoudig uitvoert met de functie .sorted(). Of we de data nu in oplopende of aflopende volgorde nodig hebben, het begrijpen van deze technieken maakt onze datamanipulatie taken eenvoudiger en efficiënter. Door deze sorteer­methoden onder de knie te krijgen, zorgen we ervoor dat onze data consistent geordend is op de manier die voor ons het beste werkt.

FAQs

Q1: Kan ik een dictionary op waarden sorteren als de waarden strings zijn in plaats van getallen?

A1: Ja, we kunnen een dictionary op waarden sorteren, zelfs als de waarden strings zijn. De functie .sorted() zal de waarden alfabetisch sorteren in oplopende of aflopende volgorde, net zoals bij getallen.

Q2: Hoe kan ik een dictionary op waarden sorteren als die geneste dictionaries bevat?

A2: Om een dictionary met geneste dictionaries te sorteren, moeten we een aangepaste sorteerkfunctie definiëren die de relevante geneste waarden extraheert en vergelijkt. Dit vereist een complexere lambda-functie of een aparte functie voor de vergelijking.

Q3: Kan ik een dictionary op waarden in-place sorteren zonder een nieuwe dictionary te maken?

A3: Nee, dictionaries in Python zijn inherent ongeordende verzamelingen in versies vóór 3.7, en hoewel ze vanaf Python 3.7 de invoegvolgorde behouden, is er geen ingebouwde methode om ze in-place te sorteren. Een dictionary sorteren resulteert altijd in het maken van een nieuwe dictionary met de gewenste volgorde.

Q4: Wat is de tijdscomplexiteit van het sorteren van een dictionary op waarden in Python?

A4: De tijdscomplexiteit van het sorteren van een dictionary op waarden met de functie .sorted() is O(n log n), waarbij n het aantal sleutel-waardeparen in de dictionary is. Dit komt doordat .sorted() intern Timsort gebruikt, een hybride sorteeralgoritme met deze complexiteit.

Q5: Verandert het sorteren van een dictionary op waarden de originele dictionary?

A5: Nee, een dictionary op waarden sorteren met de functie .sorted() maakt een nieuwe dictionary. De originele dictionary blijft ongewijzigd.


Neetika Khandelwal's photo
Author
Neetika Khandelwal
LinkedIn
Ik ben Java-ontwikkelaar en een ervaren technisch schrijver, gespecialiseerd in data science, kunstmatige intelligentie (AI) en Java-programmeren. Met meer dan 3 jaar ervaring in softwareontwikkeling heb ik een stevige expertise opgebouwd in het maken van robuuste, schaalbare applicaties en het benutten van Java’s veelzijdigheid om complexe problemen op te lossen. Ik ben gepassioneerd over het delen van kennis met de bredere techcommunity. Via diepgaande technische artikelen, tutorials en handleidingen probeer ik ingewikkelde onderwerpen rond data science en AI te ontrafelen en toegankelijk te maken voor zowel beginners als ervaren professionals. Op dit moment heb ik meer dan 125 blogs gepubliceerd.
Onderwerpen
Python
Data-analyse

Leer meer over Python met deze cursussen!

Cursus

Introductie tot Python

4 uur
7M
Leer de basis van data-analyse met Python in 4 uur. Deze online cursus laat je kennismaken met de Python-interface en populaire pakketten.
Bekijk detailsRight Arrow
Start Cursus
Meer bekijkenRight Arrow
Gerelateerd

blog

AI vanaf nul leren in 2026: een complete gids van de experts

Ontdek alles wat je moet weten om in 2026 AI te leren, van tips om te beginnen tot handige resources en inzichten van industrie-experts.
Adel Nehme's photo

Adel Nehme

15 min

Meer BekijkenMeer Bekijken