Heim > Artikel > Backend-Entwicklung > Warum dürfen Werte im Python-Wörterbuch nicht wiederholt werden?
Die Gründe, warum doppelte Werte im Python-Wörterbuch nicht zulässig sind, sind: 1. Es gibt ein klares Prinzip, dass jeder Schlüssel nur einem Element entsprechen kann. 2. Bei einem Schlüsselkonflikt wird die nächstgelegene Zuordnung verwendet. 3. Der Schlüssel muss ein entfernbarer Hash sein.
Der Grund, warum doppelte Werte im Python-Wörterbuch nicht zulässig sind, ist:
Die Werte im Wörterbuch unterliegen keinen Einschränkungen und können jedes Python-Objekt sein, von Standardobjekten bis hin zu benutzerdefinierten Objekte, aber Wörterbücher. Die Schlüssel sind typbeschränkt.
1. Ein Schlüssel darf nicht mehreren Werten entsprechen. Ein Grundsatz muss klargestellt werden: Jeder Schlüssel kann nur einem Element entsprechen. Mit anderen Worten: Mehrere Werte, die einem Schlüssel entsprechen, sind nicht zulässig (Containerobjekte wie Listen, Tupel und andere Wörterbücher sind zulässig). Wenn ein Schlüsselkonflikt vorliegt (d. h., einem Wörterbuchschlüssel wird wiederholt ein Wert zugewiesen), wird die letzte (aktuellste) Zuweisung übernommen. Python generiert keinen Fehler aufgrund widersprüchlicher Schlüssel im Wörterbuch. Es führt keine Prüfung auf Schlüsselkonflikte durch, da dies sonst bei jeder Schlüssel-Wert-Paar-Zuweisung erfolgen würde, was eine gewisse Zeit in Anspruch nehmen würde Erinnerung. Zum Beispiel: >>> dict1 = {'foo':789, 'foo': 'xyz'} dict1 Ergebnis: {'foo': 'xyz'}
2 muss hashbar sein. Die meisten Python-Objekte können als Schlüssel dienen, sie müssen jedoch hashbare Objekte sein. Veränderbare Typen wie Listen und Wörterbücher können nicht als Schlüssel verwendet werden, da sie nicht hashbar sind. Alle unveränderlichen Typen sind hashbar und können daher als Wörterbuchschlüssel verwendet werden.
Verwandte kostenlose Lernempfehlungen: Python-Tutorial(Video)
Das obige ist der detaillierte Inhalt vonWarum dürfen Werte im Python-Wörterbuch nicht wiederholt werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!