说明
《Python 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
Python 字符串的 find() 方法检测字符串中是否包含子字符串 str ,如果指定 start(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果指定范围内如果包含指定索引值,返回的是索引值在字符串中的起始位置。如果不包含索引值,返回-1。
代码如下:
str1 = 'Bye bye!'
str2 = 'ye'
str1.find(str2) # 1
str1.find(str2, 3) # 5
str1.find(str2, 7) # -1
语法为:str.find(sub[, start[, end]])
。
返回子字符串 sub 在 s[start:end] 切片内被找到的最小索引。 可选参数 start 与 end 会被解读为切片表示法。 如果 sub 未被找到则返回 -1。
参数:
str[start:end]
。返回:
以下是一些示例:
# 示例1: 基本的使用
sentence = "这是一个简单的示例字符串"
index = sentence.find("示例")
print("示例 在字符串中的索引:", index)
# 输出: 示例 在字符串中的索引: 7
# 示例2: 未找到子字符串的情况
index = sentence.find("Python")
print("Python 在字符串中的索引:", index)
# 输出: Python 在字符串中的索引: -1
# 示例3: 指定起始位置
index = sentence.find("是", 3)
print("是 在字符串中的索引 (从索引3开始):", index)
# 输出: 是 在字符串中的索引 (从索引3开始): 6
# 示例4: 大小写不敏感的搜索
index = sentence.lower().find("字符串")
print("字符串 在字符串中的索引 (大小写不敏感):", index)
# 输出: 字符串 在字符串中的索引 (大小写不敏感): 9
# 示例5: 使用 in 运算符检查子字符串是否存在
if "简单" in sentence:
print("字符串中存在'简单'")
else:
print("字符串中不存在'简单'")
find() 方法应该只在你需要知道 sub 所在位置时使用。 要检查 sub 是否为子字符串,请使用 in 操作符:
'Py' in 'Python'
# True
find() 方法是多左边开始的第一个索引,如果要从右边开始,可以用
str.index()
类似于 find(),但在找不到子字符串时会引发 ValueError。
str.rfind(sub[, start[, end]])
返回子字符串 sub 在字符串内被找到的最大(最右)索引,这样 sub 将包含在 s[start:end]
当中。 可选参数 start 与 end 会被解读为切片表示法。 如果未找到则返回 -1。
str.rindex(sub[, start[, end]])
类似于 rfind(),但在子字符串 sub 未找到时会引发 ValueError。
更新时间:2023-11-10 07:33:39 标签:python 字符串 索引