检索字符串

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm=1001.2014.3001.5501

在Python中,字符串对象提供了很多应用于字符串查找的方法,这里主要介绍以下几种方法。

(1)count()方法

count()方法用于检索指定字符串在另一个字符串中出现的次数。如果检索的字符串不存在,则返回0,否则返回出现的次数。其语法格式如下:

str.count(sub[, start[, end]])

参数说明:

l  str:表示原字符串。

l  sub:表示要检索的子字符串。

l  start:可选参数,表示检索范围的起始位置的索引,如果不指定,则从头开始检索。

l  end:可选参数,表示检索范围的结束位置的索引,如果不指定,则一直检索到结尾。

例如,定义一个字符串,然后应用count()方法检索该字符串中“@”符号出现的次数,代码如下:

str1 = '@明日科技 @扎克伯格 @俞敏洪'

print('字符串“',str1,'”中包括',str1.count('@'),'个@符号')

上面的代码执行后,将显示以下结果:

字符串“ @明日科技 @扎克伯格 @俞敏洪 ”中包括 3 个@符号

(2)find()方法

该方法用于检索是否包含指定的子字符串。如果检索的字符串不存在,则返回-1,否则返回首次出现该子字符串时的索引。其语法格式如下:

str.find(sub[, start[, end]])

参数说明:

l  str:表示原字符串。

l  sub:表示要检索的子字符串。

l  start:可选参数,表示检索范围的起始位置的索引,如果不指定,则从头开始检索。

l  end:可选参数,表示检索范围的结束位置的索引,如果不指定,则一直检索到结尾。

例如,定义一个字符串,然后应用find()方法检索该字符串中首次出现“@”符号的位置索引,代码如下:

str1 = '@明日科技 @扎克伯格 @俞敏洪'

print('字符串“',str1,'”中@符号首次出现的位置索引为:',str1.find('@'))

上面的代码执行后,将显示以下结果:

字符串“ @明日科技 @扎克伯格 @俞敏洪 ”中@符号首次出现的位置索引为: 0

说明:如果只是想要判断指定的字符串是否存在,可以使用in关键字实现。例如,上面的字符串str1中是否存在@符号,可以使用print('@' in str1),如果存在就返回True,否则返回False。另外,也可以根据find()方法的返回值是否大于-1来确定指定的字符串是否存在。

如果输入的子字符串在原字符串中不存在,将返回-1。例如下面的代码:

str1 = '@明日科技 @扎克伯格 @俞敏洪'

print('字符串“',str1,'”中*符号首次出现的位置索引为:',str1.find('*'))

上面的代码执行后,将显示以下结果:

字符串“ @明日科技 @扎克伯格 @俞敏洪 ”中*符号首次出现的位置索引为: -1

说明:Python的字符串对象还提供了rfind()方法,其作用与find()方法类似,只是从字符串右边开始查找。

(3)index()方法

index()方法同find()方法类似,也是用于检索是否包含指定的子字符串。只不过如果使用index()方法,当指定的字符串不存在时会抛出异常。其语法格式如下:

str.index(sub[, start[, end]])

参数说明:

l  str:表示原字符串。

l  sub:表示要检索的子字符串。

l  start:可选参数,表示检索范围的起始位置的索引,如果不指定,则从头开始检索。

l  end:可选参数,表示检索范围的结束位置的索引,如果不指定,则一直检索到结尾。

例如,定义一个字符串,然后应用index()方法检索该字符串中首次出现“@”符号的位置索引,代码如下:

str1 = '@明日科技 @扎克伯格 @俞敏洪'

print('字符串“',str1,'”中@符号首次出现的位置索引为:',str1.index('@'))

上面的代码执行后,将显示以下结果:

字符串“ @明日科技 @扎克伯格 @俞敏洪 ”中@符号首次出现的位置索引为: 0

如果输入的子字符串在原字符串中不存在,将会产生异常,例如下面的代码:

str1 = '@明日科技 @扎克伯格 @俞敏洪'

print('字符串“',str1,'”中*符号首次出现的位置索引为:',str1.index('*'))

上面的代码执行后,将显示如图9所示的异常。

图9  index检索不存在元素时出现的异常

说明:Python的字符串对象还提供了rindex()方法,其作用与index()方法类似,只是从右边开始查找。

(4)startswith()方法

startswith()方法用于检索字符串是否以指定子字符串开头。如果是则返回True,否则返回False。该方法语法格式如下:

str.startswith(prefix[, start[, end]])

参数说明:

l  str:表示原字符串。

l  prefix:表示要检索的子字符串。

l  start:可选参数,表示检索范围的起始位置的索引,如果不指定,则从头开始检索。

l  end:可选参数,表示检索范围的结束位置的索引,如果不指定,则一直检索到结尾。

例如,定义一个字符串,然后应用startswith()方法检索该字符串是否以“@”符号开头,代码如下:

str1 = '@明日科技 @扎克伯格 @俞敏洪'

print('判断字符串“',str1,'”是否以@符号开头,结果为:',str1.startswith('@'))

上面的代码执行后,将显示以下结果:

判断字符串“ @明日科技 @扎克伯格 @俞敏洪 ”是否以@符号开头,结果为: True

(5)endswith()方法

endswith()方法用于检索字符串是否以指定子字符串结尾。如果是则返回True,否则返回False。该方法语法格式如下:

str.endswith(suffix[, start[, end]])

参数说明:

l  str:表示原字符串。

l  suffix:表示要检索的子字符串。

l  start:可选参数,表示检索范围的起始位置的索引,如果不指定,则从头开始检索。

l  end:可选参数,表示检索范围的结束位置的索引,如果不指定,则一直检索到结尾。

例如,定义一个字符串,然后应用endswith()方法检索该字符串是否以“.com”结尾,代码如下:

str1 = ' http://www.mingrisoft.com'

print('判断字符串“',str1,'”是否以.com结尾,结果为:',str1.endswith('.com'))

上面的代码执行后,将显示以下结果:

判断字符串“ http://www.mingrisoft.com ”是否以.com结尾,结果为: True

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

万亿国债消防救援——北斗应急通讯设备类目推荐

近期,云贵川地区山火肆虐,山火大范围、远距离、独立密集地发生,给消防救援带来了巨大挑战。 消防应急工作是保障人民生命财产安全的重要环节,它涉及到预防火灾、及时应对火灾事故以及灾后恢复等多个方面。在应对火灾、事故和其他…

Web自动化测试需要掌握那些基础技能?速速收藏!

一、WEBUI自动化背景 HONGRUAN 因为web页面经常会变化,所以UI自动化测试的维护成本很高。不如接口的适用面广,所以大部分公司会做接口自动化测试,但是未必会做UI自动化测试; UI自动化测试要做也是覆盖冒烟测试,不会…

如何更改SSH服务器端口以减少蛮力攻击

本周有一个客户,购买Hostease的独立服务器,询问我们的在线客服,如何更改SSH服务器端口以减少蛮力攻击?我们为用户提供相关教程,用户很快解决了遇到的问题。在此,我们分享这个操作教程,希望可以对…

扒出秦L三个槽点,我不考虑买它了

文 | Auto芯球 作者 | 雷慢 比亚迪的有一个王炸“秦L”,再一次吸引了我注意力, 我上一辆车刚卖不久,最近打算买第二辆车, 二手车和新车都有在看, 我又是一个坚定的实用主义者, 特别是现在的经济环境不…

5款ai文案自动生成器,让你写作爆款文案不犯难!

现如今,无论是用于社交媒体、广告宣传、网站内容还是其他各种领域,优秀的文案都能吸引更多的关注和流量。但是,对于许多创作者来说,想要创作出高质量的文案并非易事,常常会面临灵感枯竭、思路卡顿等问题。而现在有了一…

display: none 和 visibility: hidden 的共性与区别

display: none 和 visibility: hidden 的共性与区别 共性:display: none 和 visibility: hidden 都是用于设置元素可见性的样式 区别 display: none 使元素及其占位完全消失:元素及其所有子元素将从文档流和布局中完全消失,就像它们不存在一…

轮廓系数(Average silhouette) | 最佳聚类数的判定

1.最佳分类个数 # 辅助确定最佳聚类数 4.7*2.6 factoextra::fviz_nbclust( t(DPAU_2), kmeans, method "silhouette")在2有下降拐点,但是样本较多时分成2类一般意义不大。 在7时也有下降拐点。 2.查看每个分类的轮廓系数 (1) pam k5 library(cluste…

硬盘恢复数据需要多久完成?硬盘恢复时间及恢复指南详解

在数字化时代,硬盘作为我们存储重要数据的核心设备,其安全性与可靠性显得尤为重要。然而,无论是由于意外删除、格式化错误还是硬盘故障,数据丢失的情况时有发生。当面临这样的困境时,硬盘数据恢复成为了我们挽回损失的…

【蓝桥杯嵌入式】第十四届省赛 更新中

0 前言 刚刚做完第十四届的省赛,这届题目比我想象中的要简单;不过我去年参加的14届单片机的省赛都比往年的国赛还难,挺离谱的~ 1 展示 1.1 源码 1.2 演示视频 1.3 题目展示 2 CubeMX配置(第十四届省赛真题) 设置下载线 HSE时钟设置 时钟树…

光耦的工作原理

一、光电耦合器简介 光电耦合器主要是一种围绕光作为媒介的光电转换元器件,能够实现光到电、电到光之间的自由转换。我们又可以称之为光电隔离器,之所以这么称呼,主要是因为光电耦合器能够很好的对电路中的电信号起到隔离的作用。有效的保护…

大数据报告有什么作用?查询方式一般有几种?

随着互联网金融的飞速发展,网络借贷已经成为了一种常见的融资方式。然而,如何在众多的平台中做出正确的选择,避免风险并实现最大利益,这就需要一份具有参考价值的大数据报告。本文将详细阐述大数据报告的作用及查询方式的几种方式…

史上最全排序算法整理!(1)

1.排序的概念及其应用 1.1排序的概念 排序是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为“有序”的记录序列。分内部排序和外部排序,若整个排序过程不需要访问外存便能完成,则称此类排序问题为内部排序。反之&#…

154.找出出现至少三次的最长特殊字符串|(力扣)

代码解决 class Solution { public:int maximumLength(string s) {// 使用unordered_map来存储每个连续子串出现的次数unordered_map<string, int> mp;string key; // 存储当前的连续子串int ans -1; // 存储最终的答案&#xff0c;如果没有符合条件的子串&#xff0c…

raid 磁盘阵列

raid 磁盘阵列&#xff1a; **条带化存储&#xff1a;**数据分散在多个物理磁盘上的存储方式。利用多个磁盘并行读取和写入。 条带化的存储性能和读写性能是最好的。 磁盘的组成方式不同&#xff0c;也就是不同的raid级别&#xff1a; **raid 0&#xff08;条带化存储&#x…

四、.Net8对接Ollama实现文字翻译(.Net8+SemanticKernel+Ollama)本地运行自己的大模型

.Net8SemanticKernelOllama 一、Semantic Kernel官方定义SK能做什么&#xff1f; 二、基本使用1、普通对话2、使用插件实现文本翻译功能 三、IChatCompletionService、ITextGenerationService、ITextEmbeddingGenerationService 很多情况都有这样的需求&#xff0c;使用自有系统…

深入解读Meta分析:原理、公式、操作步骤及结果分析;R语言Meta回归分析、诊断分析、不确定性分析与精美作图

目录 专题一 Meta分析的选题与文献计量分析CiteSpace应用 专题二 Meta分析与R语言数据清洗及相关应用 专题三 R语言Meta分析与精美作图 专题四 R语言Meta回归分析 专题五 R语言Meta诊断分析与进阶 专题六 R语言Meta分析的不确定性及贝叶斯应用 专题七 深度拓展机器学习在…

Swift 中的Getter 和 Setter

目录 前言 1. 什么是Getter和Setter 1.定义 2.作用 2.属性 1.存储属性 2.计算属性 3.属性观察者 3. 使用 Getter 和 Setter 的场景 1.数据转换 2.懒加载 3.数据验证和限制 4.触发相关操作 4.自定义Getter 和 Setter 5. 参考资料 前言 属性是 Swift 编程中的基本…

低代码(Low-Code)是什么?

#上班休息区&#xff1a;分享你的程序猿专属表情包# 目录 一、低代码概念二、低代码特点三、低代码案例四、低代码厂商五、低代码应用 低代码&#xff08;Low-Code&#xff09;是一种软件开发方法&#xff0c;它通过图形化界面和少量的编码来创建软件应用程序。低代码开发旨在…

SAP_SD模块 物料科目分配/成本简介

SAP系统各模块与财务都有个方面的集成。文本主要说明销售模块中的科目分配和成本的一个对应关系。 1、首先是在物料主数据上销售视图中的物料科目分配组&#xff0c;S1主营、S2材料等字段&#xff0c;物料销售的时候会将这个物料产生的记录到对应的科目中。 首先是物料主数据中…

如何下载b站(哔哩哔哩bilibili)的学习视频教程

方法1&#xff1a; 打开粘贴视频链接下载即可哔哩哔哩(bilibili)视频解析下载 - 保存B站视频到手机、电脑哔哩哔哩高清视频解析下载工具是一个免费的B站视频在线解析提取工具,支持提取B站APP和bilibili网站上的任何视频,提取出来的视频无水印.我们可以借助此下载器方便地将视频…