您的位置:首页 > 编程语言 > Python开发

代码干货|Python API快餐教程(1) - 字符串查找API

2017-08-03 14:11 399 查看
本文来源于阿里云-云栖社区,原文点击这里

字符串处理相关API

字符串是7种序列类型中的一种。

除了序列的操作函数,比如len()来求字符串长度之外,Python还为字符串提供丰富到可以写个编辑器的API.


查找类API

首先,下面的查找API都是为了查找位置,或者查一共有几次这样的操作。

如果只是想判断一个字符串是不是另一个字符串的子串的话,使用序列的in运算符就可以了。

例:
str1 = "hahahahaha,heiheihei"

if 'haha' in str1:
print('haha is a substring of '+str1)
else:
print('haha is NOT a substring of '+str1)


数数有多少个匹配的字符串 - count函数

原型:str.count(sub[, start[, end]])
sub:要查找的子字符串
start:起始位置
end:结束位置

字符串的count函数可以数出来有多少次匹配,我们看个例子,有5个ha和3个hei
str1 = "hahahahaha,heiheihei"

print(str1.count('ha'))
print(str1.count('haha'))


输出为5和2.

haha只能匹配两次。

再加上扩展参数:
print(str1.count('ha',1))
print(str1.count('ha',0,5))


不抛异常的查找 find和rfind

find函数的行为是,如果能找到,则返回在序列中的坐标,如果找不到,则返回-1. rfind是从右向左查找。我们来看例子:
print(str1.find('haha'))
print(str1.rfind('haha'))


输出值为0和6.

找不到的例子:
print(str1.find('hoho'))
print(str1.rfind('hi'))


输出值都是-1.

完整形式:
str.find(sub[, start[, end]])
str.rfind(sub[, start[, end]])


会抛异常的查找:index和rindex

index和rindex的功能与find和rfind基本上一致,除了在找不到时会抛出ValueError异常而不是返回-1.

例:

>>>展开全文
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐