Wird sich die Bedeutung von Gleichheit (==) ändern, da die neueste Python-Version die Einfügereihenfolge des Diktats beibehält?

8

In der neuesten Python-Version behält dict die Einfügereihenfolge bei. Gibt es eine Änderung in Bezug auf die Gleichstellung? Zum Beispiel funktioniert derzeit das Folgende. Kann sich dies in Zukunft ändern, da die Einfügereihenfolge wichtig sein wird?

Ich frage, weil es grundlegende Änderungen gibt - zuvor == funktioniert, weil die Einfügereihenfolge nicht wichtig war, da sie als ungeordnet angesehen wurde. Kann sich die Bedeutung von Gleichheit ändern, seit sie angeordnet ist?

d1={'a':1,'b':2}
d2={'b':2,'a':1}
print(d1==d2)
True

l1=['a','b']
l2=['b','a']
print(l1==l2)
False
Variable
quelle
4
Nein, diese Bedeutung wird sich nicht ändern.
L3viathan

Antworten:

2

In der offiziellen Dokumentation von Python wird Folgendes über den Operator == in Bezug auf Wörterbücher angegeben:

Zuordnungen (Instanzen von Diktaten) werden genau dann gleich verglichen, wenn sie gleiche Paare (Schlüssel, Wert) haben. Ein Gleichheitsvergleich der Schlüssel und Werte erzwingt Reflexivität.

Die Einfügereihenfolge wird also nicht berücksichtigt, und aufgrund der Abwärtskompatibilität wird dies wahrscheinlich nie der Fall sein, da dies in fast allen Fällen wahrscheinlich keinen Sinn ergibt oder nicht intuitiv ist.

averresen
quelle