我发现,比较的结果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会导致这种奇怪的行为。
是否有这种行为的原因,或者我偶然发现了一些晦涩的错误?
我遇到了这个:
>>> d1 = {"john":40, "peter":45}
>>> d2 = {"john":466, "peter":45}
>>> d1 > d2
False
Run Code Online (Sandbox Code Playgroud)
比较运算符在比较两个dicts时是做什么的False?它是如何输出的?