Python如何比较不同长度的字符串?为何"12"<"7"结果为True?
Python字符串比较规则:不同长度字符串的对比逻辑
Python里比较字符串,是按字符的Unicode码点逐个对比,既不看字符串总长度,也不会把字符串当成整体数值来比较。
拿你提到的"12"<"7"举例:
- 首先对比两个字符串的第一个字符:"1"的Unicode码点是49,"7"的码点是55
- 因为49 < 55,第一个字符就分出了大小,后面的"2"根本不会参与比较,直接返回
True
如果遇到前面字符完全相同的情况,才会以长度判定:比如"abc"和"abcd",前三个字符完全一致,短的字符串会被判定为更小,所以"abc"<"abcd"返回True。
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

