View objects for Python dict compare differently than I would expect:
a = {0 : 'a', 1 : 'b'}
b = {1 : 'b', 0 : 'a'}
print(a == b) # True
print(a.keys() == b.keys()) # True
print(a.values() == b.values()) # False
print(a.items() == b.items()) # True
Is there any particular reason why for dict.values() this is False?
In fact, in the case of same dicts (not even the copy), it is also False:
a = {0 : 'a', 1 : 'b'}
print(a.values() == a.values()) # False
What does the equality of this view object mean then?