Python字符串的内建函数_从字符串中,遍历出每一个字符后,分别在条件语句下,利用字符串的内建函数(isalpha-程序员宅基地

技术标签: python  Python  

为了处理字符串,Python提供了很多的内建函数,如查找子串,统计字符串长度,大小写转换等,这里将介绍常用内建函数的用法。

一、find函数

find函数用于查找一个字符串的子串。找到满足条件的子串,则返回子串第一个字符在原始字符串中的索引,否则返回-1.find函数还支持设置查找范围,搜索指定范围内的子串,具体如下,其中第8行和第11行,find函数的第二个参数表示查找的起始位置,第三个参数表示查找的结束位置。

content="where it's working on 5G in ways you may not be expecting"
result=content.find("5G")
print("查找子串5G:",result)

result=content.find("hello")
print("查找子串hello:",result)

result=content.find("5G",23,30)
print("在指定范围内查找子串5G:",result)

result=content.find("5G",22,25)
print("在指定范围内查找子串5G:",result)

执行结果如下,输出在各种查找方式下的搜索结果。

查找子串5G: 22
查找子串hello: -1
在指定范围内查找子串5G: -1
在指定范围内查找子串5G: 22

二、count函数

count函数用于统计一个字符串的子串出现次数。count函数同样支持设置查找范围,统计指定范围内的子串,具体如下。第5行中coun函数的第二个参数表示查找的起始位置,第三个参数表示查找的结束位置。

content="hello world,hello python"
result=content.count("hello")
print("统计子串hello出现次数:",result)

result=content.count("hello",0,15)
print("统计指定范围内hello出现次数:",result)

执行结果如下,输出出现次数

统计子串hello出现次数: 2
统计指定范围内hello出现次数: 1

三、replace函数

replace函数用于把原始字符串中的部分字符替换成新字符。replace函数的第三个参数,用于指定最大替换次数,如下

content="hello world,hello python,hello bigdata"
result=content.replace("hello","你好")
print("替换后的字符串:",result)

result=content.replace("hello","你好",2)
print("指定最多替换次数:",result)

执行结果如下,输出替换结果

替换后的字符串: 你好 world,你好 python,你好 bigdata
指定最多替换次数: 你好 world,你好 python,hello bigdata

四、split函数

split函数用于分割字符串,并将分割后的结果以列表形式返回。split函数的第二个参数,用于指定分割多少个字符串,如下

content="hello world,hello python,hello bigdata"
result=content.split(" ")
print("使用空格进行分割:",result)
result=content.split(" ",1)
print("指定分割第1个空格:",result)

执行结果如下,输出分割结果

使用空格进行分割: ['hello', 'world,hello', 'python,hello', 'bigdata']
指定分割第1个空格: ['hello', 'world,hello python,hello bigdata']

五、title函数与capitalize函数

title函数与capitalize函数都是将字符串以标题化的方式返回,实际上就是将单词首字母大写,如下

content="hello world,hello python"
result=content.title()
print("使用title标题化:",result)

result=content.capitalize()
print("使用capitalize标题化:",result)

执行结果如下,输出标题化后的字符串,可以看到,title函数会将字符串中的所有单词首字母转换为大写,capitalize函数只会将第一个单词首字母转换为大写。

使用title标题化: Hello World,Hello Python
使用capitalize标题化: Hello world,hello python

六、startswith函数与endswith函数

startswith函数用于检测字符串是否以某个子串作为开头,endswith函数则是用于检测是否以某个子串作为结尾。startswith函数与endswith函数的第二个参数表示检测的起始位置,第三个参数表示检测的结束位置,如下

content="hello world,hello python"
result=content.startswith("hello")
print("检测字符串是否以hello作为开头:",result)

result=content.startswith("world")
print("检测字符串是否以world作为开头:",result)

result=content.startswith("world",6,15)
print("检测字符串位置6~15之间的子串是否以world作为开头:",result)

result=content.startswith("python")
print("检测字符串是否以python作为结尾:",result)

执行结果如下,输出检测结果

检测字符串是否以hello作为开头: True
检测字符串是否以world作为开头: False
检测字符串位置6~15之间的子串是否以world作为开头: True
检测字符串是否以python作为结尾: False

七、lower函数与upper函数

lower函数用于将字符串全部转换为小写,upper函数则是将字符串全部转换为大写,如下

content="Hello World,Hello Python"
result=content.lower()
print("将字符转换为小写:",result)

result=content.upper()
print("将字符转换为大写:",result)

执行结果如下,转换输出结果

将字符转换为小写: hello world,hello python
将字符转换为大写: HELLO WORLD,HELLO PYTHON

八、center函数

center函数用于将原始字符串扩展到指定长度并居中。字符串的其余部分使用第二个参数进行填充。若是第二个参数未指定,则使用空格填充,如下

content="hello"
result=content.center(11)
print("默认使用空格填充:",result)

result=content.center(11,"-")
print("使用短横线填充:",result)

执行结果如下,输出居中与填充结果

默认使用空格填充:    hello   
使用短横线填充: ---hello---

九、strip函数

strip函数用于移除字符串首尾的指定字符或子串,若是未指定参数,则默认移除空格,如下

content="hello"
result=content.strip()
print("移除空格:",result)

result=content.strip("lo")
print("移除末尾的lo:",result)

执行结果如下,删除首尾的字符。注意,要删除的" l “有两个,因此剩余的部分是” he "

移除空格: hello
移除末尾的lo: he

十、translate函数

translate函数用于替换字符。与replace函数不同的是,replace函数是按字符串组合进行替换的,而translate函数则是对单个字符进行替换,因此translate函数的执行效率高于replace函数。在使用translate函数替换之前,需要调用str对象的maketrans方法,用于创建替换的映射表。maketrans方法中的第一个参数是被替换的字符,第二个参数是新的字符,两者的长度需要一致。maketrans方法创建的映射表示两个参数的各个字符对应的Unicode码的映射关系,maketrans方法的第三个参数,用于指定要删除的字符,如下

content="hello,world"
table=str.maketrans("lo","ab")
print("Unicode码之间的映射关系:",table)

result=content.translate(table)
print("转换结果:",result)

table=str.maketrans("lo","ab",",")
result=content.translate(table)
print("转换结果:",result)

执行结果如下,输出转换结果

Unicode码之间的映射关系: {
    108: 97, 111: 98}
转换结果: heaab,wbrad
转换结果: heaabwbrad

十一、join函数

join函数用于将一个序列快速转换为一个字符串。如下,在第2行,使用空格将数组a的元素连接在一起;在第5行,使用逗号将元素连接在一起。注意,使用join函数将序列转换为字符串时,序列中的元素都应该为字符串类型

a=["hello","world","hello","python"]
result=' '.join(a)
print("使用空格连接数组元素:",result)

result=','.join(a)
print("使用逗号连接数组元素:",result)

执行结果如下,输出结果

使用空格连接数组元素: hello world hello python
使用逗号连接数组元素: hello,world,hello,python

十二、字符串验证函数

除以上常用的字符串外,还有isalnum、isascii、isdigit、islower、isnumeric、isupper等is开头的函数。这些函数用于验证字符串是否是数字、是否为ASCII码、是否小写等,返回布尔类型的结果。这些函数在特定情况下使用,因此这里不在赘述。

本篇文章就到这里结束了,希望能给小伙伴们一些帮助,喜欢的小伙伴们可以点赞支持一下噢!
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Mandy__sa/article/details/124217870

智能推荐

oracle 12c 集群安装后的检查_12c查看crs状态-程序员宅基地

文章浏览阅读1.6k次。安装配置gi、安装数据库软件、dbca建库见下:http://blog.csdn.net/kadwf123/article/details/784299611、检查集群节点及状态:[root@rac2 ~]# olsnodes -srac1 Activerac2 Activerac3 Activerac4 Active[root@rac2 ~]_12c查看crs状态

解决jupyter notebook无法找到虚拟环境的问题_jupyter没有pytorch环境-程序员宅基地

文章浏览阅读1.3w次,点赞45次,收藏99次。我个人用的是anaconda3的一个python集成环境,自带jupyter notebook,但在我打开jupyter notebook界面后,却找不到对应的虚拟环境,原来是jupyter notebook只是通用于下载anaconda时自带的环境,其他环境要想使用必须手动下载一些库:1.首先进入到自己创建的虚拟环境(pytorch是虚拟环境的名字)activate pytorch2.在该环境下下载这个库conda install ipykernelconda install nb__jupyter没有pytorch环境

国内安装scoop的保姆教程_scoop-cn-程序员宅基地

文章浏览阅读5.2k次,点赞19次,收藏28次。选择scoop纯属意外,也是无奈,因为电脑用户被锁了管理员权限,所有exe安装程序都无法安装,只可以用绿色软件,最后被我发现scoop,省去了到处下载XXX绿色版的烦恼,当然scoop里需要管理员权限的软件也跟我无缘了(譬如everything)。推荐添加dorado这个bucket镜像,里面很多中文软件,但是部分国外的软件下载地址在github,可能无法下载。以上两个是官方bucket的国内镜像,所有软件建议优先从这里下载。上面可以看到很多bucket以及软件数。如果官网登陆不了可以试一下以下方式。_scoop-cn

Element ui colorpicker在Vue中的使用_vue el-color-picker-程序员宅基地

文章浏览阅读4.5k次,点赞2次,收藏3次。首先要有一个color-picker组件 <el-color-picker v-model="headcolor"></el-color-picker>在data里面data() { return {headcolor: ’ #278add ’ //这里可以选择一个默认的颜色} }然后在你想要改变颜色的地方用v-bind绑定就好了,例如:这里的:sty..._vue el-color-picker

迅为iTOP-4412精英版之烧写内核移植后的镜像_exynos 4412 刷机-程序员宅基地

文章浏览阅读640次。基于芯片日益增长的问题,所以内核开发者们引入了新的方法,就是在内核中只保留函数,而数据则不包含,由用户(应用程序员)自己把数据按照规定的格式编写,并放在约定的地方,为了不占用过多的内存,还要求数据以根精简的方式编写。boot启动时,传参给内核,告诉内核设备树文件和kernel的位置,内核启动时根据地址去找到设备树文件,再利用专用的编译器去反编译dtb文件,将dtb还原成数据结构,以供驱动的函数去调用。firmware是三星的一个固件的设备信息,因为找不到固件,所以内核启动不成功。_exynos 4412 刷机

Linux系统配置jdk_linux配置jdk-程序员宅基地

文章浏览阅读2w次,点赞24次,收藏42次。Linux系统配置jdkLinux学习教程,Linux入门教程(超详细)_linux配置jdk

随便推点

matlab(4):特殊符号的输入_matlab微米怎么输入-程序员宅基地

文章浏览阅读3.3k次,点赞5次,收藏19次。xlabel('\delta');ylabel('AUC');具体符号的对照表参照下图:_matlab微米怎么输入

C语言程序设计-文件(打开与关闭、顺序、二进制读写)-程序员宅基地

文章浏览阅读119次。顺序读写指的是按照文件中数据的顺序进行读取或写入。对于文本文件,可以使用fgets、fputs、fscanf、fprintf等函数进行顺序读写。在C语言中,对文件的操作通常涉及文件的打开、读写以及关闭。文件的打开使用fopen函数,而关闭则使用fclose函数。在C语言中,可以使用fread和fwrite函数进行二进制读写。‍ Biaoge 于2024-03-09 23:51发布 阅读量:7 ️文章类型:【 C语言程序设计 】在C语言中,用于打开文件的函数是____,用于关闭文件的函数是____。

Touchdesigner自学笔记之三_touchdesigner怎么让一个模型跟着鼠标移动-程序员宅基地

文章浏览阅读3.4k次,点赞2次,收藏13次。跟随鼠标移动的粒子以grid(SOP)为partical(SOP)的资源模板,调整后连接【Geo组合+point spirit(MAT)】,在连接【feedback组合】适当调整。影响粒子动态的节点【metaball(SOP)+force(SOP)】添加mouse in(CHOP)鼠标位置到metaball的坐标,实现鼠标影响。..._touchdesigner怎么让一个模型跟着鼠标移动

【附源码】基于java的校园停车场管理系统的设计与实现61m0e9计算机毕设SSM_基于java技术的停车场管理系统实现与设计-程序员宅基地

文章浏览阅读178次。项目运行环境配置:Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:Springboot + mybatis + Maven +mysql5.7或8.0+html+css+js等等组成,B/S模式 + Maven管理等等。环境需要1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。_基于java技术的停车场管理系统实现与设计

Android系统播放器MediaPlayer源码分析_android多媒体播放源码分析 时序图-程序员宅基地

文章浏览阅读3.5k次。前言对于MediaPlayer播放器的源码分析内容相对来说比较多,会从Java-&amp;amp;gt;Jni-&amp;amp;gt;C/C++慢慢分析,后面会慢慢更新。另外,博客只作为自己学习记录的一种方式,对于其他的不过多的评论。MediaPlayerDemopublic class MainActivity extends AppCompatActivity implements SurfaceHolder.Cal..._android多媒体播放源码分析 时序图

java 数据结构与算法 ——快速排序法-程序员宅基地

文章浏览阅读2.4k次,点赞41次,收藏13次。java 数据结构与算法 ——快速排序法_快速排序法