python中 字符串是怎么比较大小的

Python011

python中 字符串是怎么比较大小的,第1张

从第一个字符开始比较,比较的是字符对应的ASCII码大小,如果两年字符串字符相同,但是一个字符串的字符多,则多的大,比如:

"ABC"小于"ABCD"

"ABD"大于"ABC"

脚本片段:

str1 = "resultCode": "200"

str2 = "{"total":2,"pages":1,"hint":"","resultCode":"200","error":""}

预期结果应该是返回True,但脚本执行后,结果一直是False,

肉眼观察没有问题,最后发现是str1的冒号后面多了一个空格。

在python里,汉字分字节流和unicode字符串:

参考http://www.sqlite.com.cn/MySqlite/11/395.Html

例如“哈”字,假如两个有两个字符str1和str2

str1

=

'\xb9\xfe'

//

这个字节流表示哈字是使用GBK编码的字节流

str2

=

u'\u54c8

//

表示这个字符使用UNICODE-16编码

判断相等:

str1.decode('GBK')

==

str2

统一转换成UNICODE16比较,

如果str2不是UNICODE16编码,也需要做相应的转换。