index & find函数
函数调用格式:
s.index(str, start, end)
str:指定要检测的字符串
s:被检查对象
start:检测起始位置,默认为0
end:检测结束位置,默认为s的长度
s.find(str, start, end)
str:指定要检测的字符串
s:被检查对象
start:检测起始位置,默认为0
end:检测结束位置,默认为s的长度
功能:index和find函数均是检测目标字符串str在被检测对象字符串中的位置,检测结果是返回str在s中的位置;需要注意的是在计算位置时空字符也是被算进去了的,例如:
str1 = 'this is an example '
str2 = 'exam'
print(str1.find(str2))
>> 11
#其中间隔/空字符也是被计算进去了的
差异:当str在s中不存在时,index会抛出异常,而find函数则会返回-1;因此在具体函数中多用find函数的返回值来作为判断条件,当然index函数的选用也要根据具体情况而定。
str1 = 'this is an example '
str2 = 'exal'
print(str1.find(str2))
>>-1 #find返回-1
str1 = 'this is an example '
str2 = 'exal'
print(str1.index(str2))
>>
#index抛出异常
C:\pycharm\py\venv\Scripts\python.exe C:/pycharm/py/try'.py
Traceback (most recent call last):
File "C:\pycharm\py\try'.py", line 3, in <module>
print(str1.index(str2))
ValueError: substring not found
Process finished with exit code 1
注:需要注意的是,find和index函数都是对大小写敏感的函数