Python中==与>运算符比较不同数据类型的行为差异原因探究
Python中不同类型比较的差异原因
在Python里,==(相等判断)和>、<这类(大小判断)的规则完全是两回事:
- 对于
==和!=:当你比较两种不同类型的对象时,只要没有专门定义跨类型相等的逻辑,Python就直接返回False。比如整数1和字符串'1',一个是数字类型一个是文本类型,本身就不是同一类东西,所以1 == '1'返回False。 - 对于
>、<这类有序比较:Python认为不同类型的对象之间没有合理的“大小”关系——你没法说一个数字比一段文本大还是小,这种比较没有实际意义。所以当你尝试用>比较1和'1'时,Python直接抛出TypeError,告诉你没法比较这俩不同类型的对象。
内容的提问来源于stack exchange,提问作者user3458364
相关产品推荐
相关产品推荐

