学习 Python 时,遇到看到菜鸟教程里的 cmp() 方法,衍生出这篇文章。但是后来和朋友讨论,感觉在实际应用中极少有用到比较字典大小的场景。不过能搞懂一个知识点,还是很开心的。
Python 2 使用 cmp() 比较字典大小
cmp(dict1, dict2)
比较两个字典大小的方法:先比字典长度,若相等就比 key 值,若再相等就比 value。
但是这个方法已经被 Python 3 取消了。
请参考:Python2 用 cmp() 比较字典大小,Python3 为什么取消了 __cmp__ 方法
Python 3 使用 operator 模块比较字典大小
operator 模块提供了一系列方法比较两个字典大小,详细方法及使用示例请参考:Python3 使用 operator 模块比较字典大小。
但是在写法上我们要注意,最好用 String 内置的方法,这样利于对空值的判断:
import operator
str1 = 'hello'
str2 = None
print(operator.eq(str1, str2))
print(str1.__eq__(str2))
结果如下:
False
NotImplemented
网友评论