一、find(str, beg, end)/index(str, beg, end) 从左到右查找某个符号在字符串中第一次出现的位置,返回正向下标(从字符串左边开始查询字符串匹配到的第一个索引) 二、rfind(str, beg, end)/rindex(str, beg, end) 从右到左查找某个符号第一次出现的位置,返回正向下标(从字符串右边开始查询字符串匹配到的第一个索引) ----> 也可以说从左到右最后一次出现的位置 find(str, beg, end)、index(str, beg, end)、rfind(str, beg, end)、rindex(str, beg, end)这四个方法均可检测字符串中是否包含子字符串 str ,如果指定 beg 和 end 范围,则检查是否包含在指定范围内。beg – 开始索引,默认为 0;end – 结束索引,默认为字符串的长度。 find、rfind找不到元素返回-1 而 index、rindex找不到元素会报错(异常) 下面用代码来感受一下初级用法: str_6 = 'abcaa' print(str_6.find('a')) # 0 print(str_6.rfind('a')) # 4 print(str_6.find('1')) # -1 print(str_6.rfind('1')) # -1print(str_6.index('a')) # 0 print(str_6.rindex('a')) # 4 # print(str_6.index('1')) # ValueError: substring not found # print(str_6.rindex('1')) # ValueError: substring not found 指定下标的用法:从下标beg开始找,到下标end结束 str_6 = 'abcaa' # 从下标2开始到下标5结束(结束参数end没写默认为字符串长度5),从左到右找 a 第一次出现的下标, print(str_6.find('a', 2)) # 3 print(str_6.index('a', 2)) # 3 # 从下标1开始到下标2结束,从左到右找 a 第一次出现的位置,在此区间并没有找到a, print(str_6.find('a', 1, 2)) # -1 print(str_6.index('a', 1, 2)) # ValueError: substring not foundprint(str_6.rfind('a', 2)) # 4 # 从右往左,下标在0~2之间第一出现a的下标 print(str_6.rindex('a', 0, 2)) # 0