www.sghz.net > python字符串比较函数

python字符串比较函数

通常的'alpha' 是小于 'beta'的,不知道你这个怎么来的.比较的原则是按照ASCII的顺序来的.

字符串按位比较,两个字符串第一位字符的ascii码谁大,字符串就大,不再比较后面的;第一个字符相同就比第二个字符串,以此类推,需要注意的是空格的ascii码是32,空(null)的ascii码是0,比如:s1='a bc',s2='a bc ',则s2>s1.

cmp比较两个数,有三种状态,前者大于后者,返回1,二者相等,返回0,否则返回-1而==只能返回两种状态,如果二者相等,返回True,否则返回False

#可以用函数字典,看看是否满足你的要求def text_func(self): print "this is text func"def int_func(self): print "this is int_func"gen_func={'text':text_func, 'int':int_func}def choose(a='text'): return gen_func[a]

python没有strcmp函数 不过有cmp不用导入直接用就行#strcmp(sStr1,sStr2) sStr1 ='strchr' sStr2 ='strch' print cmp(sStr1,sStr2)

可以直接使用python的内建函数cmp():s1='hello's2='hell's3='hello world's4='hello'cmp(s1,s2)#输出结果为1cmp(s1,s3)#输出结果为-1cmp(s1,s4)#输出结果为0

直接比较字符的ascii码大小啊

任何两个对象都可以比较 相同类型的对象(实例),如果是数字型(int/float/long/complex),则按照简单的大小来比较;如果是非数字型

python自带库difflib用来做序列比较,通过difflib.SequenceMatcher(None, a, b) .ratio() 返回字符串a和b的相似度,其中第一个位置为自定义函数

目前字符串直接加点的方法没法增加,可行的方法是重载或者扩展类.下面是一个扩展的例子.class string(str): def __init__(self, s): self.s = s def totest(self): print('This is a test.for ' + self.s)if __name__ == '__main__': abc = string('abc') print(abc.split('b')) abc.totest()

网站地图

All rights reserved Powered by www.sghz.net

copyright ©right 2010-2021。
www.sghz.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com