python中字符串内建函数之find / rfind 、index / rindex的区别

一、find(str, beg, end)/index(str, beg, end)

从左到右查找某个符号在字符串中第一次出现的位置返回正向下标(从字符串左边开始查询字符串匹配到的第一个索引)

二、rfind(str, beg, end)/rindex(str, beg, end)

从右到左查找某个符号第一次出现的位置返回正向下标(从字符串右边开始查询字符串匹配到的第一个索引) ----> 也可以说从左到右最后一次出现的位置

find(str, beg, end)、index(str, beg, end)、rfind(str, beg, end)、rindex(str, beg, end)这四个方法均可检测字符串中是否包含子字符串 str ,如果指定 beg 和 end 范围,则检查是否包含在指定范围内。beg – 开始索引,默认为 0;end – 结束索引,默认为字符串的长度find、rfind找不到元素返回-1 而 index、rindex找不到元素会报错(异常)

下面用代码来感受一下初级用法:
str_6 = 'abcaa'
print(str_6.find('a'))  # 0
print(str_6.rfind('a'))  # 4
print(str_6.find('1'))  # -1
print(str_6.rfind('1'))  # -1print(str_6.index('a'))  # 0
print(str_6.rindex('a'))  # 4
# print(str_6.index('1'))  # ValueError: substring not found
# print(str_6.rindex('1'))  # ValueError: substring not found
指定下标的用法:从下标beg开始找,到下标end结束
str_6 = 'abcaa'
# 从下标2开始到下标5结束(结束参数end没写默认为字符串长度5),从左到右找 a 第一次出现的下标,
print(str_6.find('a', 2))  # 3
print(str_6.index('a', 2))  # 3
# 从下标1开始到下标2结束,从左到右找 a 第一次出现的位置,在此区间并没有找到a,
print(str_6.find('a', 1, 2))  # -1
print(str_6.index('a', 1, 2))  # ValueError: substring not foundprint(str_6.rfind('a', 2))  # 4
# 从右往左,下标在0~2之间第一出现a的下标
print(str_6.rindex('a', 0, 2))  # 0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/31556.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis_概述

1.redis概述 1.1 简介 截止到2021年12月 数据库排名https://db-engines.com/en/ranking redis(Remote Dictionary Server) 一个开源的key-value存储系统它支持存储的Value类型:包括String(字符串),list(链表),set(集合),zset(sorted set 有序集合),hash(哈希类型…

ad+硬件每日学习十个知识点(27)23.8.7 (DCDC的datasheet)

文章目录 1.DCDC拿到手册需要关注的参数2.MOS选型3.TPS54331的ECO模式(跳跃模式,损耗小、纹波大)4.TPS54331的引脚功能(BOOT这里没太看懂,之后回来再看看)5.TPS54331的额定值6.TPS54331在test条件下的电气特…

【Linux】【预】配置网络IP,挂载网络目录

【Linux】【预】配置网络IP,挂载网络目录 1. 配置查看IP2.配置Linux中的IP3. 串口连接开发板,配置 1. 配置查看IP a . 查看ipifconfig如下操作,其中的:192.168.252.140就是它的IP b . 使用xmodem 连接到虚拟机,最后点…

前端css + js +vue +element-ui 实现响应式布局,根据浏览器窗体大小自动响应

前端css js vue element-ui 实现响应式布局,根据浏览器窗体大小自动响应 1、环境2、js代码3、代码解释1、定义对象2、定义方法3、监听窗口变化,计算比例值,并赋值给transform 属性4、实现监听 3、html 代码4、特别注意 1、环境 我的环境是e…

c++ | this指针 和bind、function

个人理解: this 指针 可以简单理解为类 对象的 指针(也是隐藏指针),注意,类的成员(成员函数、成员变量)是通过类的对象进行调用的。如果把函数充当成员函数是错误的,粗鲁的解释&…

对于企业:数字化的趋势不可阻挡.以无代码开发实现敏捷交付

在科技日新月异的今天,我们正处在一个由数据驱动的时代。为了在这个时代中占据一席之地,我们需要不断探索新的开发模式,以适应不断变化的市场需求。其中,无代码开发模式正逐渐成为引领未来科技的关键。 一、什么是无代码开发 无代…

判断时间段是否重叠

1、逻辑公式 时间段1&#xff1a;start1&#xff08;开始时间&#xff09;&#xff0c;end1&#xff08;结束时间&#xff09; 时间段2&#xff1a;start2&#xff08;开始时间&#xff09;&#xff0c;end2&#xff08;结束时间&#xff09; 重叠条件为&#xff1a;start1 <…

unity修改单个3D物体的重力的大小该怎么处理呢?

在Unity中修改单个3D物体的重力大小可以通过以下步骤实现&#xff1a; 创建一个新的C#脚本来控制重力&#xff1a; 首先&#xff0c;创建一个新的C#脚本&#xff08;例如&#xff1a;GravityModifier.cs&#xff09;并将其附加到需要修改重力的3D物体上。在脚本中&#xff0c…

SpringBoot整合多数据源

SpringBoot整合多数据源 在实际企业项目开发中&#xff0c;我们经常会在SpringBoot项目中配置多数据源&#xff0c;一方面可以减缓数据库压力&#xff0c;另一方面可以也是业务需求的场景 下面就来看看如何在SpringBoot项目中配置多数据源 POM 在配置多数据源之前&#xff…

reactNative跳转appstore链接报错:Redirection to URL with a scheme that is not HTTP(S)

在reactnative中webview跳转H5下载页面&#xff0c;包错Redirection to URL with a scheme that is not HTTP(S) 在webview中添加一下代码 const onShouldStartLoadWithRequest (event: any) > {const { url } event;console.log(url);if (url.startsWith(https://itune…

7个顶级开源数据集来训练自然语言处理(NLP)和文本模型

推荐&#xff1a;使用 NSDT场景编辑器快速助你搭建可二次编辑的3D应用场景 NLP现在是一个令人兴奋的领域&#xff0c;特别是在像AutoNLP这样的用例中&#xff0c;但很难掌握。开始使用NLP的主要问题是缺乏适当的指导和该领域的过度广度。很容易迷失在各种论文和代码中&#xff…

功能测试进阶自动化测试如何摸清学习方向,少走弯路呢?

目录 抛开疑问&#xff0c;只做学术探讨 小白在想什么&#xff1f; 盖楼之前先打好地基&#xff0c;首先需要学习一门语言 语言入门后&#xff0c;正式踏上开始自动化成神之路&#xff0c;入门篇Selenium 玩腻了Selenium 开始接触自动化框架unittest/testNG 不满足于单元…

电脑蓝屏显示恢复怎么办,电脑蓝屏后出现恢复界面怎么回事

电脑蓝屏显示恢复怎么办,电脑蓝屏后出现恢复界面怎么回事 目录 下面是问题描述&#xff08;看看和你遇到的问题一不一样&#xff09; 图片一 图片二 图片三 开始解决问题 步骤 1&#xff1a;耐心等待 步骤 2&#xff1a;重启计算机 步骤 3&#xff1a;进入安全模式 步骤…

【插入排序】直接插入排序 与 希尔排序

目录 1. 排序的概念&#xff1a; 2.插入排序基本思想 3.直接插入排序 4.希尔排序 1. 排序的概念&#xff1a; 排序&#xff1a;所谓排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某些关键字的大小&#xff0c;递增或递减的排列起来的操作。 稳定性&#xf…

FlexRay汽车总线静电防护,如何设计保护方案图?

FlexRay是一种高速、实时、可靠、具备故障容错能力的总线技术&#xff0c;是继CAN和LIN总线之后的最新研发成果。FlexRay为线控应用&#xff08;即线控驱动、线控转向、线控制动等&#xff09;提供了容错和时间确定性性能要求。虽然FlexRay将解决当前高端和未来主流车载网络的挑…

vite+vue3项目环境搭建

1.安装 npm init vite 2.输入项目名称 vue3-project 3.选择框架 说明&#xff1a;vue 4.选择类别 说明&#xff1a;JavaScript 5.进入文件夹 cd vue3-project yarn npm run dev 6.打开local

Java通过正则对字符串中的数字补零

在字符串排序时有时会遇到这种情况&#xff1a; 水浒传 第1集.mp4 水浒传 第2集.mp4 … 水浒传 第10集.mp4 水浒传 第11集.mp4 排序时&#xff0c;“水浒传 第10集.mp4”会排在“水浒传 第1集.mp4”前面&#xff0c;排序后的结果变成&#xff1a; 水浒传 第1集.mp4 水浒传 第10…

W5500-EVB-PICO 做TCP Server进行回环测试(六)

前言 上一章我们用W5500-EVB-PICO开发板做TCP 客户端连接服务器进行数据回环测试&#xff0c;那么本章将用开发板做TCP服务器来进行数据回环测试。 TCP是什么&#xff1f;什么是TCP Server&#xff1f;能干什么&#xff1f; TCP (Transmission Control Protocol) 是一种面向连…

Untiy Json和Xml的序列化和反序列化

Json的序列化和反序列化 1.定义数据类 [Serializable] public class ZoomPoint {// 点名称, 将作为Key被字典存储public string name;// 轴心X坐标public Vector2 pivot Vector2.one / 2;// 放大倍率&#xff0c;小于1是为缩小倍率&#xff0c;小于0是取绝对值&#xff0c;不…

空降流量危机?QQ音乐升级架构应对高并发

# 关注并星标腾讯云开发者 # 每周3 | 谈谈我在腾讯的架构设计经验 # 第2期 | 赵威&#xff1a;QQ音乐评论系统如何实现高可用&#xff1f; QQ 音乐自诞生以来&#xff0c;已有多个版本的评论业务系统。最新版本是19年再次全新迭代&#xff0c;基于 tlist 存储&#xff0c;按照发…