Python程序获取字符串中子字符串的索引
在Python中,我们可以使用 find() 和 index() 方法获取字符串中子字符串的第一次出现的索引。Python提供了各种字符串操作函数来修改和访问文本数据。在本文中,我们将编写一个程序来获取字符串中子字符串的索引。
方法1:使用find()方法
find()方法搜索传递给函数作为参数的特定子字符串,并返回子字符串的起始索引。如果字符串中未找到子字符串,则find()方法返回-1。
当调用find()方法时,它会采取3个参数- –
- Substring - 在字符串中要搜索的子字符串
-
起始索引(可选) - 您希望find()方法从哪里开始搜索的索引。其默认值为0,即字符串的起始索引。
-
终止索引(可选) - 您希望find()方法继续搜索子字符串的索引。其默认值为字符串的长度,即字符串的末尾索引。
语法
string.find(substring, start, end)
字符串是您要查找子字符串索引的字符串。传递的开始和结束索引是可选的。当未作为参数传递时,它将采用默认值。
示例
如果我们想在字符串“Hello, World!”中查找子字符串“World”的索引,则可以使用find()方法详细信息如下 –
string = "Hello, World!"
substring = "World"
index = string.find(substring)
print(index)
输出
7
方法2:使用index()方法
index()方法返回字符串中第一个出现的子字符串的索引。如果未找到子字符串,则会引发ValueError。
index()方法也像find()方法一样需要三个参数- –
- Substring - 在字符串中要搜索的子字符串
-
起始索引(可选) - 您希望find()方法从哪里开始搜索的索引。其默认值为0,即字符串的起始索引。
-
终止索引(可选) - 您希望find()方法继续搜索子字符串的索引。其默认值为字符串的长度,即字符串的末尾索引。
语法
string.index(substring, start, end)
字符串是您要查找子字符串索引的字符串。传递的开始和结束索引是可选的。当未作为参数传递时,它将采用默认值。
示例
如果我们想在字符串“Welcome to Tutorial Point”中查找子字符串“Point”的索引,则可以使用index()方法详细信息如下 –
string = "Welcome to Tutorial Point"
substring = "Point"
index = string.index(substring)
print(index)
输出
20
处理错误
当在字符串中未找到子字符串时,index()方法引发ValueError,而find()方法返回-1。要处理此错误并将输出显示为“未找到子字符串”,我们可以使用 try-except 块来处理此错误。
示例
如果我们想在字符串“欢迎来到Tutorials Point”中查找子字符串“Python”的索引,则find()方法将返回-1, index()方法将引发值错误,因为该子字符串不在字符串中。这是如何使用try-except块处理index函数的错误。
string =“欢迎来到教程点”
substring =“Python”
try:
index = string.index(substring)
except ValueError:
print(“未找到子字符串”)
输出
未找到子字符串
当字符串中未找到子字符串时,find()方法将简单地返回-1。因此,在find()方法的情况下,我们不需要处理任何错误。
例
string =“欢迎来到教程点”
substring =“Python”
index = string.find(substring)
print(index)
输出
-1
结论
在Python中,我们可以使用find()和index()方法获取子字符串的第一次出现的索引。这两种方法都将子字符串,开始索引(可选)和结束索引(可选)作为参数。当未找到子字符串时,find()方法返回-1,而index()方法引发valueError。我们可以在Python中使用try-except块处理valueError。