Python中为什么字符串"a"的比较结果大于"A"?
Python字符大小比较原理
- 数字比较示例
代码:
输出print(4 > 5)False,符合常规数值大小比较逻辑,和基础数学判断规则完全一致。 - 字符比较示例
代码:
输出print("a" > "A")True,Python中字符串的大小比较基于Unicode码点:- 每个字符在Unicode编码表中都对应唯一的整数值,这个数值就是码点
- 单个字符比较时,直接对比二者的码点大小就能得到结果
- 具体数值:大写字母
A的码点为65,小写字母a的码点为97,97>65,因此返回True
补充说明:如果是多字符的字符串比较,会从左到右逐位对比对应位置的字符码点,一旦某一位能分出大小就直接返回最终结果,不会继续对比后续字符。比如
"apple">"Ant"只需对比第一位a和A的码点就可以得到True的结果。
内容的提问来源于stack exchange,提问作者Shambhu Jagtap
相关产品推荐
相关产品推荐

