在Python 3.x和Python 2.7中,dict.values()和dict.keys()的相等性存在不一致的行为。
- 论坛
- 在Python 3.x和Python 2.7中,dict.values()和dict.keys()的相等性存在不一致的行为。
8 浏览
在Python 3.x和Python 2.7中,dict.values()和dict.keys()的相等性存在不一致的行为。
我发现将内置的字典dict
的keys()
和values()
方法进行比较,结果是不一致的:
instance = {'one': 1} instance.values() == instance.values() # 返回False instance.keys() == instance.keys() # 返回True
在Python 2.7中运行上述代码将同时返回True,这让我相信Python 3的dict_values
中存在某些实现细节导致了这种奇怪的行为。
这种行为是有原因的,还是我碰巧遇到了某个隐晦的错误?