Python(七十七)字符串的常用操作——字符串的查询操作

❤️ 专栏简介:本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中,我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。
☀️ 专栏适用人群 :本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无论你是学生、职场人士还是对编程感兴趣的爱好者,都能从中受益。跟着我的学习笔记一起学习python吧。
🌙专栏目标:本专栏的目标是帮助我自己记忆、方便回顾所学知识以及帮助其他想学习python的小伙伴掌握Python编程语言的基本概念和技巧,并逐步提高我们的编程能力。通过这个专栏,我们将学会如何编写Python代码,理解各种数据类型、控制结构和函数,掌握常用的Python模块和库,以及应用Python解决实际问题。

⭐️ 专栏主要内容: 主要学习python的开发环境搭建;Python的基础知识,包括变量、数据类型、条件语句和循环等;python的数据结构和算法;python的函数和模块;python的文件处理等。
🌴 专栏说明 :如果文章知识点有错误的地方,欢迎大家随时在文章下面评论,我会第一时间改正。让我们一起学习,一起进步。
💑专栏主页:从零开始的Python入门之路

在这里插入图片描述

在Python中,字符串是一种常见的数据类型,用于表示文本数据。在处理字符串时,我们经常需要进行查询操作,以查找特定的子字符串或获取字符串中某个字符的位置。

字符串的查询操作

在这里插入图片描述
下面会详细介绍4个函数的用法。

index()方法

index()方法用于返回字符串中指定子字符串的第一个匹配位置。如果找不到该子字符串,将会引发一个ValueError异常。

下面是index()方法的语法:

str.index(sub[, start[, end]])
  • sub:要查找的子字符串。
  • start(可选):查找的起始位置,默认为0。
  • end(可选):查找的结束位置,默认为字符串的长度。

让我们来看一个例子:

# 定义一个字符串
my_string = "Hello, World!"

# 使用index()方法查找子字符串"World"
index = my_string.index("World")

print("子字符串'World'的索引位置:", index)

输出结果:

子字符串'World'的索引位置: 7

在上面的例子中,我们定义了一个字符串my_string,然后使用index()方法查找子字符串"World"的索引位置。由于"World"在字符串中存在,因此返回了它的索引位置7。

如果要查找的子字符串不存在,index()方法将引发ValueError异常。下面是一个示例:

# 定义一个字符串
my_string = "Hello, World!"

try:
    # 使用index()方法查找子字符串"Python"
    index = my_string.index("Python")
    print("子字符串'Python'的索引位置:", index)
except ValueError:
    print("未找到子字符串'Python'")

输出结果:

未找到子字符串'Python'

在上面的例子中,我们尝试使用index()方法查找子字符串"Python"的索引位置。由于该子字符串不存在于原始字符串中,因此引发了ValueError异常。为了避免程序崩溃,我们使用了异常处理来捕获并处理该异常。

rindex()方法

rindex()方法与index()方法类似,但它返回的是指定子字符串的最后一个匹配位置。如果找不到该子字符串,同样会引发一个ValueError异常。

下面是rindex()方法的语法:

str.rindex(sub[, start[, end]])
  • sub:要查找的子字符串。
  • start(可选):查找的起始位置,默认为0。
  • end(可选):查找的结束位置,默认为字符串的长度。

让我们来看一个例子:

# 定义一个字符串
my_string = "Hello, World!"

# 使用rindex()方法查找子字符串"o"
index = my_string.rindex("o")

print("子字符串'o'的索引位置:", index)

输出结果:

子字符串'o'的索引位置: 8

在上面的例子中,我们使用rindex()方法查找子字符串"o"的索引位置。由于"o"在字符串中多次出现,但我们只获取最后一个匹配位置,因此返回了索引位置8。

如果要查找的子字符串不存在,rindex()方法将引发ValueError异常。下面是一个示例:

# 定义一个字符串
my_string = "Hello, World!"

try:
    # 使用rindex()方法查找子字符串"Python"
    index = my_string.rindex("Python")
    print("子字符串'Python'的索引位置:", index)
except ValueError:
    print("未找到子字符串'Python'")

输出结果:

未找到子字符串'Python'

在上面的例子中,我们尝试使用rindex()方法查找子字符串"Python"的索引位置。由于该子字符串不存在于原始字符串中,因此引发了ValueError异常。

find()方法

find()方法与index()方法类似,用于在字符串中查找指定子字符串的第一个匹配位置。但与index()方法不同的是,如果找不到该子字符串,find()方法将返回-1,而不会引发异常。

下面是find()方法的语法:

str.find(sub[, start[, end]])
  • sub:要查找的子字符串。
  • start(可选):查找的起始位置,默认为0。
  • end(可选):查找的结束位置,默认为字符串的长度。

让我们来看一个例子:

# 定义一个字符串
my_string = "Hello, World!"

# 使用find()方法查找子字符串"World"
index = my_string.find("World")

print("子字符串'World'的索引位置:", index)

输出结果:

子字符串'World'的索引位置: 7

在上面的例子中,我们使用find()方法查找子字符串"World"的索引位置。由于"World"在字符串中存在,因此返回了它的索引位置7。

如果要查找的子字符串不存在,find()方法将返回-1。下面是一个示例:

# 定义一个字符串
my_string = "Hello, World!"

# 使用find()方法查找子字符串"Python"
index = my_string.find("Python")

print("子字符串'Python'的索引位置:", index)

输出结果:

子字符串'Python'的索引位置: -1

在上面的例子中,我们使用find()方法查找子字符串"Python"的索引位置。由于该子字符串不存在于原始字符串中,因此返回了-1。

rfind()方法

rfind()方法与find()方法类似,但它返回的是指定子字符串的最后一个匹配位置。如果找不到该子字符串,rfind()方法将返回-1。

下面是rfind()方法的语法:

str.rfind(sub[, start[, end]])
  • sub:要查找的子字符串。
  • start(可选):查找的起始位置,默认为0。
  • end(可选):查找的结束位置,默认为字符串的长度。

让我们来看一个例子:

# 定义一个字符串
my_string = "Hello, World!"

# 使用rfind()方法查找子字符串"o"
index = my_string.rfind("o")

print("子字符串'o'的索引位置:", index)

输出结果:

子字符串'o'的索引位置: 8

在上面的例子中,我们使用rfind()方法查找子字符串"o"的索引位置。由于"o"在字符串中多次出现,但我们只获取最后一个匹配位置,因此返回了索引位置8。

如果要查找的子字符串不存在,rfind()方法将返回-1。下面是一个示例:

# 定义一个字符串
my_string = "Hello, World!"

# 使用rfind()方法查找子字符串"Python"
index = my_string.rfind("Python")

print("子字符串'Python'的索引位置:", index)

输出结果:

子字符串'Python'的索引位置: -1

在上面的例子中,我们使用rfind()方法查找子字符串"Python"的索引位置。由于该子字符串不存在于原始字符串中,因此返回了-1。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乘凉~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值