Python 程序设计讲义(33):字符串的处理方法——查找字符或子串:find() 方法与index()方法
查找字符是指查找字符串中是否包含某个字符或子串。可以在指定的范围内进行查找。
使用find()
方法与index()
方法实现字符或子串的查找功能。
一、find()
方法
使用find()
方法进行子串的查找时,如果在字符串中找到要查找的字符或子串,就返回首次出现该字符或子串的序号值。如果找不到要查找的字符或子串,则返回-1
。
find()
方法的语法格式如下:
str.find(substr,start,end)
说明:
(1)substr:要查找的字符或子串
(2)start:查找时开始搜索的位置。如果省略,则从头开始搜索。
(3)end:查找时结束搜索的位置,如果省略,则搜索到最后一个位置。
例如:
str1="河南科技学院经济与管理学院金融科技专业"
n=str1.find("学")
print(n)
n=str1.find("I")
print(n)
n=str1.find("学院")
print(n)
n=str1.find("学校")
print(n)
n=str1.find("学院",7)
print(n)
程序运行结果为:
4
-1
4
-1
11
二、index()
方法
index()
方法与find()
方法类似。区别在于:当使用index()
方法查找字符或子串时,如果找到,则返回该字符或子串的索引序号值。如果找不到,则出现异常。
index()
方法的语法格式如下:
str.index(substr,start,end)
说明:
(1)substr:要查找的字符或子串
(2)start:查找时开始搜索的位置。如果省略,则从头开始搜索。
(3)end:查找时结束搜索的位置,如果省略,则搜索到最后一个位置。
例如:
str1="河南科技学院经济与管理学院金融科技专业"
n=str1.index("学")
print(n)
n=str1.index("学院")
print(n)
n=str1.index("学院",7)
print(n)
程序运行结果为:
4
4
11
查找时,如果找不到字符或子串,则会报错。
例如:
str1="河南科技学院经济与管理学院金融科技专业"
n=str1.index("学校")
print(n)
程序运行结果为:
Traceback (most recent call last):
File "C:\Users\wgx58\PycharmProjects\PythonProject\hello.py", line 2, in <module>
n=str1.index("学校")
~~~~~~~~~~^^^^^^^^
ValueError: substring not found