1、问题概述?
根据不同的场景,选择不同的字符串存在性判断,十分重要!
2、in 和not in的用法
in 和 not in刚好相反
#判断字符串是否存在
if __name__ == '__main__':
str1="list index out of range"
str2="index"
#判断str2在str1中是否存在
if str2 in str1:
print("====存在====")
if str2 not in str1:
print("====不存在====")
3、find与rfind的用法
find与rfind都是查找字符串第一次出现的位置并返回,找不到不抛出异常,不同之处在于。
假如字符串长度为30
find:从左边开始找,从索引0开始找到30,返回第一次出现字符串的位置。
rfind:从右边开始找,从索引30开始找到0,返回第一次出现字符串的位置。
#判断字符串是否存在
if __name__ == '__main__':
str1="list index out of a index range"
str2="index"
#判断str2在str1中是否存在
if(str1.rfind(str2)>-1):
print(str1.rfind(str2)) #返回值20
if (str1.find(str2) > -1):
print(str1.find(str2)) #返回值5
4、index与rindex的用法
inde与rindex都是查找字符串第一次出现的位置并返回,找不到抛出异常ValueError: substring not found
不同之处在于。假如字符串长度为30
index:从左边开始找,从索引0开始找到30,返回第一次出现字符串的位置。
rindex:从右边开始找,从索引30开始找到0,返回第一次出现字符串的位置。
#判断字符串是否存在
if __name__ == '__main__':
str1="list index out of a index range"
str2="index"
#判断str2在str1中是否存在
if (str1.rindex(str2) > -1):
print(str1.rindex(str2)) #返回值20
if (str1.index(str2) > -1):
print(str1.index(str2)) # 返回值5
5、计算字符串出现的次数count
#判断字符串是否存在
if __name__ == '__main__':
str1="list index out of a index range"
str2="index"
#判断str2在str1中是否存在
print(str1.count(str2))
6、去除字符串两边的空格
str1.lstrip()#删除左边空格
str1.rstrip()#删除右边空格
str1.strip()#删除两边的空格
#判断字符串是否存在
if __name__ == '__main__':
str1="list index out of a index range"
str2="index"
str1.lstrip()#删除左边空格
str1.rstrip()#删除右边空格
str1.strip()#删除两边的空格