相关疑难解决方法(0)

Python 3.x和Python 2.7中dict.values()和dict.keys()相等性之间的行为不一致

我发现,比较的结果keys()values()方法的dict内置在自己产生不一致的结果:

instance = {'one': 1}

instance.values() == instance.values() # Returns False
instance.keys() == instance.keys()     # Returns True
Run Code Online (Sandbox Code Playgroud)

在Python 2.7中运行上述代码将对两个调用都返回True,这使我相信Python 3的一些实现细节dict_values会导致这种奇怪的行为。

是否有这种行为的原因,或者我偶然发现了一些晦涩的错误?

python python-2.7 python-3.x

33
推荐指数
1
解决办法
1112
查看次数

比较运算符在字典上做了什么?

我遇到了这个:

>>> d1 = {"john":40, "peter":45}
>>> d2 = {"john":466, "peter":45}
>>> d1 > d2
False
Run Code Online (Sandbox Code Playgroud)

比较运算符在比较两个dicts时是做什么的False?它是如何输出的?

python dictionary python-2.7

3
推荐指数
1
解决办法
198
查看次数

标签 统计

python ×2

python-2.7 ×2

dictionary ×1

python-3.x ×1