I tried to compare dict.values and I get weird result.
a = dict()
print(a.keys() == a.keys()) # True
print(a.values() == a.values()) # False
print(a.values().__eq__(a.values())) # NotImplemented
# but
values = a.values()
print(values == values) # True
print(values.__eq__(values)) # True
Do you have any ideas why it works like that?