xingchen.luo 发表于 2021-2-17 21:18:28

比较操作符

请问执行'鞥'> '诶' > '爱' > '波' >'昂' > '恩' > '安' > '坡' > '啊' > '哦'   操作是返回True还是返回False,是如何判断的?

昨非 发表于 2021-2-17 21:24:13

本帖最后由 昨非 于 2021-2-17 22:51 编辑

纠正:
      比较的实质是比较汉字的编码数值没错
        但python中连续(比较)判断的语句,必须满足每个汉字字符都满足才行
      在这个例子中,就是这些汉字的编码值依次递减时,才返回true
   (十分抱歉刚刚说的是c语言的规则,抱歉抱歉)

print('鞥'> '诶' > '爱' > '波' >'昂' > '恩' > '安' > '坡' > '啊' > '哦')
print(ord('鞥'))
print(ord('诶'))
print(ord('爱'))
print(ord('波'))
print(ord('昂'))
print(ord('恩'))
print(ord('安'))
print(ord('坡'))
print(ord('啊'))
print(ord('哦'))
结果为:(恰好递减)True
38821
35830
29233
27874
26114
24681
23433
22369
21834
21734

xingchen.luo 发表于 2021-2-17 21:58:44

昨非 发表于 2021-2-17 21:24
比较时遵循左结合
先比较'鞥'> '诶'(实际比较的应该是汉字编码值的大小)
会返回一个bool值(0或1), ...

如何确认汉字编码值呢?

昨非 发表于 2021-2-17 22:03:01

xingchen.luo 发表于 2021-2-17 21:58
如何确认汉字编码值呢?

ord方法可以得到汉字编码的整型值
print(ord('爱'))
得到29233

kogawananari 发表于 2021-2-17 22:18:18

昨非 发表于 2021-2-17 21:24
比较时遵循左结合
先比较'鞥'> '诶'(实际比较的应该是汉字编码值的大小)
会返回一个bool值(0或1), ...

不存在左结合
{:10_292:}
数学意义的连等才能True

昨非 发表于 2021-2-17 22:20:00

kogawananari 发表于 2021-2-17 22:18
不存在左结合

数学意义的连等才能True

同级比较运算符从左往右运算啊

kogawananari 发表于 2021-2-17 22:36:15

昨非 发表于 2021-2-17 22:20
同级比较运算符从左往右运算啊

-2 < -1 < 0
是false还是true{:10_292:}

昨非 发表于 2021-2-17 22:40:19

kogawananari 发表于 2021-2-17 22:36
-2 < -1 < 0
是false还是true

啊,我是憨批,我**又和c搞混了{:10_247:}

悲哀的猫 发表于 2021-2-18 13:49:43

1 < 2 < 3我记得解释为1<2 and 2 < 3

_2_ 发表于 2021-2-18 19:43:20

昨非 发表于 2021-2-17 22:40
啊,我是憨批,我**又和c搞混了

我担心的事还是发生了{:10_256:}
页: [1]
查看完整版本: 比较操作符