find方法和index方法的区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了find方法和index方法的区别相关的知识,希望对你有一定的参考价值。
参考技术A Python find():find 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。
参数:
str -- 指定检索的字符串
beg -- 开始索引,默认为0。
end -- 结束索引,默认为字符串的长度。
实例:
输出:
Python index():
index 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。
参数
str -- 指定检索的字符串
beg -- 开始索引,默认为0。
end -- 结束索引,默认为字符串的长度。
返回值
如果包含子字符串返回开始的索引值,否则抛出异常
实例:
输出:
python中index()find()方法
python中index()、find()方法,具体内容如下:
- index() 方法检测字符串中是否包含子字符串 str ,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。影响后面程序执行
- index()方法语法:str.index(str, beg=0, end=len(string))
str1=\'python is on the way\']
str2=\'on\'
#空格,等其他操作符对其索引位置也有影响
#在str1中检测字符串中是否含有子字符串str2 str1.index(str2,beg=0,end=len(str1))
#如果包含子字符串 返回检测到的索引值
print(str1.index(str2))
#从索引1开始检测,检测长度为3
print(str1.index(str2,1,3))
如果包含子字符串返回开始的索引值,否则抛出异常。
user_name = [\'xiaolei\',\'xiaoman\',\'lixia\']
pass_word = [\'123\',\'456\',\'789\']
username = input(\'username:\').strip()
password = input(\'password:\').strip()
if username in user_name and password == pass_word[user_name.index(username)]:
print(f"登录成功,欢迎您:username")
else:
print("错误!")
#小编创建了一个Python学习交流群:711312441
若输入:username == xiaolei
user_name.index(username) == 0
所以:password == pass_word[0] == 123
Python find()方法,不能用于列表list
str.find(str, beg=0, end=len(string))
- str -- 指定检索的字符串
- beg -- 开始索引,默认为0。
- end -- 结束索引,默认为字符串的长度。
Python find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。不影响后面程序执行
str1=\'python is on the way\'
str2=\'on\'
str3=\'nice\'
print(str1.index(str2))
#不在字符串str1中
print(str1.find(str3))
#从索引1开始检测,检测长度为3
print(str1.find(str2,1,3))
以上是关于find方法和index方法的区别的主要内容,如果未能解决你的问题,请参考以下文章
python序列类型字符串的方法L.index()与L.find()区别
python如何实现index()功能,不能使用index()、find()函数方法