Python中字符串的find()方法与index()方法

find()方法
语法
str1.find(str2, beg=0, end=len(string))
作用

检测 str2 是否包含在字符串str1中,如果指定范围 beg 和 end ,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则返回-1。

index()方法
语法
str1.index(str2, beg=0, end=len(str1))
作用

检测 str2 是否包含在字符串str1中,如果指定范围 beg 和 end ,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则会出现异常报错。

两个方法的对比

1、当在字符串str1中的索引范围内包含了字符串str2时,find()方法与index()方法都会返回字符串str2在字符串str1中的第一个索引位置;
2、当在字符串str1中的索引范围内不包含字符串str2时,find()方法会返回一个-1值,而index()方法则会报错,错误类型为:ValueError: substring not found。

示例:
print('aabbccabc'.find('ab'))  # 从下标0开始查找
>> 1
print('aabbccabc'.find('ab', 3, len('aabbccabc')))  # 从下标3开始查找
>> 6
print('aabbccabc'.find('abd'))
>> -1
print('aabbccabc'.index('ab'))  # 从下标0开始查找
>> 1
print('aabbccabc'.index('ab', 3, len('aabbccabc')))  # 从下标3开始查找
>> 6
print('aabbccabc'.index('abd'))
>> ValueError: substring not found

总结:在使用index()方法时,要注意字符串str1中是否包含字符串str2,如果在不确定时,建议使用find()方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值