Python | Sortieren Sie Python-Wörterbücher nach Schlüssel oder Wert
Es gibt zwei Elemente in einem Python-Wörterbuch: Schlüssel und Werte. Sie können das Wörterbuch nach Schlüsseln, Werten oder beidem sortieren. In diesem Artikel besprechen wir die Methoden zum Sortieren von Wörterbüchern nach Schlüssel oder Wert Python .
Notwendigkeit eines Sortierwörterbuchs in Python
Wir brauchen eine Sortierung der Daten, um die Komplexität der Daten zu reduzieren und Abfragen schneller und effizienter zu machen. Das Sortieren ist sehr wichtig, wenn wir mit großen Datenmengen arbeiten.
Mit diesen Methoden können wir ein Wörterbuch nach Werten sortieren:
- Sortieren Sie zunächst die Schlüssel alphabetisch nach Schlüsselwert. iterkeys() Funktion.
- Zweitens sortieren Sie die Schlüssel alphabetisch mit dem sortiert (key_value) Funktion und geben Sie den entsprechenden Wert aus.
- Drittens sortieren Sie die Werte alphabetisch nach Schlüsselwert. iteritems() , Schlüssel = Lambda (k, v) : (v, k))
Sortieren Sie Python-Wörterbücher nach Schlüssel- oder Wertbeispielen
Hier sind die wichtigsten Aufgaben, die ausgeführt werden müssen, um ein Wörterbuch in Python nach Wert und Schlüsseln zu sortieren.
- Ein ... kreieren Wörterbuch und zeigt seine Listenschlüssel alphabetisch an.
- Zeigen Sie sowohl die Schlüssel als auch die Werte an, sortiert nach Schlüssel in alphabetischer Reihenfolge.
- Zeigen Sie abschließend sowohl die Schlüssel als auch die Werte an, sortiert nach Wert in alphabetischer Reihenfolge.
Beispiel 1: Wörterbuch nach Schlüssel sortieren
In diesem Beispiel sortieren wir das Wörterbuch nach Schlüsseln und der Ergebnistyp ist ein Wörterbuch.
Python3
myDict> => {> 'ravi'> :> 10> ,> 'rajnish'> :> 9> ,> > 'sanjeev'> :> 15> ,> 'yash'> :> 2> ,> 'suraj'> :> 32> }> myKeys> => list> (myDict.keys())> myKeys.sort()> sorted_dict> => {i: myDict[i]> for> i> in> myKeys}> print> (sorted_dict)> |
Ausgabe
{'rajnish': 9, 'ravi': 10, 'sanjeev': 15, 'suraj': 32, 'yash': 2} Beispiel 2: Anzeige der Schlüssel in sortierter Reihenfolge
In diesem Beispiel versuchen wir, das Wörterbuch nach Schlüsseln und Werten in Python zu sortieren. Hier gibt iterkeys() einen Iterator über die Schlüssel des Wörterbuchs zurück.
Python3
# Function calling> def> dictionary():> > # Declare hash function> > key_value> => {}> # Initializing value> > key_value[> 2> ]> => 56> > key_value[> 1> ]> => 2> > key_value[> 5> ]> => 12> > key_value[> 4> ]> => 24> > key_value[> 6> ]> => 18> > key_value[> 3> ]> => 323> > print> (> 'Task 1:-
'> )> > print> (> 'key_value'> , key_value)> > # iterkeys() returns an iterator over the> > # dictionary’s keys.> > for> i> in> sorted> (key_value.keys()):> > print> (i, end> => ' '> )> def> main():> > # function calling> > dictionary()> # Main function calling> if> __name__> => => '__main__'> :> > main()> |
Ausgabe
Task 1:- key_value {2: 56, 1: 2, 5: 12, 4: 24, 6: 18, 3: 323} 1 2 3 4 5 6 Beispiel 3: Sortieren des Wörterbuchs nach Schlüssel
In diesem Beispiel sortieren wir in lexikografischer Reihenfolge und nehmen den Schlüsseltyp als Zeichenfolge.
Python3
# Creates a sorted dictionary (sorted by key)> from> collections> import> OrderedDict> dict> => {> 'ravi'> :> '10'> ,> 'rajnish'> :> '9'> ,> > 'sanjeev'> :> '15'> ,> 'yash'> :> '2'> ,> 'suraj'> :> '32'> }> dict1> => OrderedDict(> sorted> (> dict> .items()))> print> (dict1)> |
Ausgabe
OrderedDict([('rajnish', '9'), ('ravi', '10'), ('sanjeev', '15'), ('suraj', '32'), ('yash', '2')]) Beispiel 4: Sortieren Sie die Schlüssel und Werte alphabetisch mithilfe des Schlüssels
In diesem Beispiel versuchen wir, das Wörterbuch nach Schlüsseln und Werten in Python zu sortieren. Hier verwenden wir einen Iterator über den Wert des Wörterbuchs, um die Schlüssel zu sortieren.
Python3
# function calling> def> dictionairy():> > # Declaring the hash function> > key_value> => {}> # Initialize value> > key_value[> 2> ]> => 56> > key_value[> 1> ]> => 2> > key_value[> 5> ]> => 12> > key_value[> 4> ]> => 24> > key_value[> 6> ]> => 18> > key_value[> 3> ]> => 323> > > print> (> 'key_value'> ,key_value)> > print> (> 'Task 2:-
Keys and Values sorted in'> ,> > 'alphabetical order by the key '> )> > > # sorted(key_value) returns a sorted list> > # of the Dictionary’s keys.> > for> i> in> sorted> (key_value):> > print> ((i, key_value[i]), end> => ' '> )> def> main():> > # function calling> > dictionairy()> # main function calling> if> __name__> => => '__main__'> :> > main()> |
Ausgabe
key_value {2: 56, 1: 2, 5: 12, 4: 24, 6: 18, 3: 323} Task 2:- Keys and Values sorted in alphabetical order by the key (1, 2) (2, 56) (3, 323) (4, 24) (5, 12) (6, 18) Beispiel 5: Sortieren Sie die Schlüssel und Werte alphabetisch anhand des Werts
In diesem Beispiel versuchen wir, das Wörterbuch nach Schlüsseln und Werten in Python zu sortieren. Hier verwenden wir die Sortierung in lexikografischer Reihenfolge.
Python3
# Function calling> def> dictionairy():> > # Declaring hash function> > key_value> => {}> # Initializing the value> > key_value[> 2> ]> => 56> > key_value[> 1> ]> => 2> > key_value[> 5> ]> => 12> > key_value[> 4> ]> => 24> > key_value[> 6> ]> => 18> > key_value[> 3> ]> => 323> > > print> (> 'key_value'> ,key_value)> > print> (> 'Task 3:-
Keys and Values sorted'> ,> > 'in alphabetical order by the value'> )> > # Note that it will sort in lexicographical order> > # For mathematical way, change it to float> > print> (> sorted> (key_value.items(), key> => lambda> kv:> > (kv[> 1> ], kv[> 0> ])))> def> main():> > # function calling> > dictionairy()> # main function calling> if> __name__> => => '__main__'> :> > main()> |
Ausgabe
key_value {2: 56, 1: 2, 5: 12, 4: 24, 6: 18, 3: 323} Task 3:- Keys and Values sorted in alphabetical order by the value [(1, 2), (5, 12), (6, 18), (4, 24), (2, 56), (3, 323)] Die Zeitkomplexität für dieses Programm beträgt O(n log n), wobei n die Anzahl der Schlüssel-Wert-Paare im Wörterbuch ist.
Die Komplexität des Hilfsraums für dieses Programm beträgt ebenfalls O(n), wobei n die Anzahl der Schlüssel-Wert-Paare im Wörterbuch ist.
Beispiel 6: Wörterbuch nach Wert sortieren
In diesem Beispiel versuchen wir, das Wörterbuch nach Werten in Python zu sortieren. Hier verwenden wir das Wörterbuchverständnis, um unsere Werte zu sortieren.
Python3
# Creates a sorted dictionary (sorted by key)> from> collections> import> OrderedDict> import> numpy as np> dict> => {> 'ravi'> :> 10> ,> 'rajnish'> :> 9> ,> > 'sanjeev'> :> 15> ,> 'yash'> :> 2> ,> 'suraj'> :> 32> }> print> (> dict> )> keys> => list> (> dict> .keys())> values> => list> (> dict> .values())> sorted_value_index> => np.argsort(values)> sorted_dict> => {keys[i]: values[i]> for> i> in> sorted_value_index}> print> (sorted_dict)> |
Ausgabe:
{'ravi': 10, 'rajnish': 9, 'sanjeev': 15, 'yash': 2, 'suraj': 32} {'ravi': 2, 'rajnish': 9, 'sanjeev': 10, 'yash': 15, 'suraj': 32} Zeitkomplexität: O(n log n), wobei n die Anzahl der Elemente im Wörterbuch ist.
Nebenraum: O(n), da wir neue Listen mit Schlüsseln und Werten erstellen und ein neues Wörterbuch mit der gleichen Anzahl von Einträgen wie das ursprüngliche Wörterbuch erstellen.
Wir haben verschiedene Beispiele behandelt, die auf der Sortierung des Wörterbuchs nach Schlüssel oder Wert basieren. Das Lesen und Üben dieser Python-Codes wird Ihnen helfen, die Sortierung in Python-Wörterbüchern zu verstehen.
Sie können die Werte von Wörterbüchern einfach nach ihrem Schlüssel oder Wert sortieren.
Ähnliche Lektüre:
- Sortieren Sie ein Wörterbuch
- Verschiedene Möglichkeiten, das Wörterbuch nach Werten und umgekehrt zu sortieren
- Verschiedene Möglichkeiten, das Wörterbuch nach Schlüsseln und umgekehrt zu sortieren
- Möglichkeiten zum Sortieren der Liste von Wörterbüchern nach Werten
- Sortieren Sie die Liste der Wörterbuchschlüssel und -werte