Heim > Backend-Entwicklung > Python-Tutorial > Verfügt Python über eine integrierte Datenstruktur für geordnete Mengen?

Verfügt Python über eine integrierte Datenstruktur für geordnete Mengen?

Linda Hamilton
Freigeben: 2024-12-16 18:02:13
Original
493 Leute haben es durchsucht

Does Python Have a Built-in Ordered Set Data Structure?

Pythons geordnete Datenstrukturen

Python bietet eine Reihe geordneter Datenstrukturen, einschließlich des geordneten Wörterbuchs. Es stellt sich jedoch die Frage: Verfügt Python auch über eine geordnete Menge?

Fehlen einer integrierten geordneten Menge

Im Gegensatz zu geordneten Wörterbüchern verfügt Python nicht über eine integrierte geordnete Menge. im geordneten Set-Typ. Diese Auslassung kann auf die Tatsache zurückgeführt werden, dass Mengen von Natur aus ungeordnete Sammlungen eindeutiger Elemente enthalten.

Emulieren geordneter Mengen in Python 3.7

Dennoch können Sie ab Python 3.7 kann das Diktat der Standardbibliothek verwenden, um eine geordnete Menge nachzuahmen. Indem Sie ein Diktat nur mit Schlüsseln (und auf „Keine“ gesetzten Werten) erstellen, können Sie die gewünschte Funktionalität erreichen.

keywords = ['foo', 'bar', 'bar', 'foo', 'baz', 'foo']

ordered_keywords = list(dict.fromkeys(keywords))
print(ordered_keywords)
# Output: ['foo', 'bar', 'baz']
Nach dem Login kopieren

Dieser Ansatz filtert doppelte Elemente effektiv heraus und behält gleichzeitig die Reihenfolge bei, wodurch das Verhalten eines geordneten Satzes nachgeahmt wird .

Alternative für ältere Python-Versionen

Wenn Sie eine Python-Version vor 3.7 verwenden, müssen Sie kann die Sammlungen.OrderedDict nutzen, um eine ähnliche Funktionalität für geordnete Mengen zu erreichen.

Das obige ist der detaillierte Inhalt vonVerfügt Python über eine integrierte Datenstruktur für geordnete Mengen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage