Python字符串比较本身是属于python字符串的一部分。
为什么把他拿出来单独说呢,我之前是做web开发,也接触过C#开发,在这两门语言中的字符串比较与python中的字符串比较稍有不同
Python可以使用相等(==)和比较(<,>,!=,<=,> =)运算符执行Python字符串比较。 没有比较两个字符串的特殊方法。
而我目前接触到的其他几门语言 字符串比较好像是只有 == 与 != 两种操作,当然,我也没有在除python的语言中用过 >= 与 <= 来比较字符串。
我们先大概了解下python字符串比较的规则与原理:
比较规则:首先比较两个字符串中的第一个字符,如果相等则继续比较下一个字符,依次比较下去,直到两个字符串中的字符不相等时,其比较结果就是两个 字符串的比较结果,两个字符串中的所有后续字符将不再被比较
比较原理:两上字符进行比较时,比较的是其ordinal value(原始值),调用内置函 数ord可以得到指定字符的ordinal value。与内置函数ord对应的是内置函数chr, 调用内置函数chr时指定ordinal value可以得到其对应的字符
两个字符串中的字符执行Python字符串比较,两个字符串中的字符被一一比较。 当找到不同的字符时,将比较它们的Unicode值。 Unicode值较低的字符被认为较小。
简单说就是两个字符串中的字符一个一个的比较,有一个比较出结果了,后边的就不比较了
比如:
css
复制代码
a = 'helloWorld' b = 'hello' if a > b: print('true') else: print('false')
输出:
true
解释一下:变量A和B前五个字符相同,a有第六位字符,b没有第六位字符,因此a比b大。
下面我们来看另一个简单的小例子:
bash
复制代码
str1 = 'apple' str2 = 'banner' if str1 > str2: print('true') else: print('false')
输出:
false
解释一下:这个比较我们应该参照上边的比较原理
我们看两个字符串的首个字符:
perl
复制代码
print(ord('a'),ord('b')) # 输出97 98
98 大于 97 因此 字符 str1 大于 str2
以上大概就是python中的字符串比较的基本操作。
有好的建议,请在下方输入你的评论。