更多课程 选择中心


Python培训

400-111-8989

Python中查找与替换字符

  • 发布:Python培训
  • 来源:人工智能初学者
  • 时间:2019-11-01 11:39

今天我们来学习查找与替换字符串,对于查找和替换字符串是程序对字符串处理的最基础功能,在python中给我们提供了str.find()函数用于获取子字符串出现的位置。

str.find()的语法函数是在一个变量之后.find之后传入目标字符串,后面两个参数可以指定开始与结束的位置。

标准语法:str.find(目标串,[开始位置],[结束位置]),,例如:"Nice to meet you".find("ee")返回9。

这里我们传入目标字符串为ee,就会返回9,那是为什么呢?那是因为这句话中ee出现的位置在第10个字符符合要求,那为什么返回9呢?那是因为在我们程序处理的时候,所有字符串第一个字母的索引值为0,依次往后类推,到ee的时候索引值就是9了,这和我们自然的从1开始是不同的。这一点一定要记住。

回到代码中,我们对刚才的程序做一下测试,

对于find的方法,会第一次索引出现的位置,,所以这里我们设置变量index

#字符串查找

source="Nice to meet you"

index=source.find("ee")

#给个变量index,代表索引的意思

#输出indexprint(index)

此时看到运行的结果为9,和我们预期相符,返回的是字符串第一次索引的位置,是从0开始索引的

Python中查找与替换字符

对于查找字符串我们还可以缩小查找范围,这里我们把原始字符串延长

source="Nice to meet you,i need your help!"

index=source.find("ee",17)

print(index)

可以看到在我新增的这句话里面也出现了ee,对于find方法是可以指定起始位置与结束位置的,find后面两位参数代表起始位置,这里我们指定you后面的数字为17,意思是第二个参数代表起始位置,它会从逗号以后进行数据的查找,因为从逗号之后开始查找的,前面的ee就跳过了,后面的ee会被获取,尽管它的查找范围是这样的,但是find方法出现的结果是从第一个字符数到后面的ee这里,也就是索引值为21的位置。

Python中查找与替换字符

当然,如果你愿意你还可以在后面增加结束的位置,比如在find的第二个参数增加为27。

source="Nice to meet you, i need your help!"

index=source.find("ee",17,27)

print(index)

我们输出看一下

Python中查找与替换字符

输出的结果还是21,那是因为ee在17到27这个范围之内,所以从0数到ee的位置是21不变。

如果我们将find的第二个参数27改成22,不包含ee,我们看会输出什么。

代码如下:

source="Nice to meet you, i need your help!"

index=source.find("ee",17,22)

print(index)
 Python中查找与替换字符

运行之后,输出的结果为-1,那是因为在选中的范围内17到22之间没有ee这个字符串出现,则会返回-1,-1的意思是在该范围内不存在指定的字符串。

我想对于find方法,您应该掌握了具体的用途,在绝大多数情况下,我们并不需要后面的两个参数,值需要传入目标字符串,就可以在完整的结果中进行查找了,对于find方法就讲到这里了。

在这里我们还要再讲解一个小知识,如果我们不关心ee在这个字符串中出现在什么位置,只关心它出没出现过,这里我们可以使用一个表达式。

source="Nice to meet you, i need your help!"
isexise ="ee" in source

print(isexise)

运行结果如下:

Python中查找与替换字符

这是简单的方式,但是只会返回True或者False。

字符串替换

下面我们来学习字符串的替换功能,在我们日常开发过程中字符串替换功能非常常用,它用于原始的文本,将符合要求的字符串替换成新的字符串,在这里python3为我们提供了replace函数进行字符串替换,那么replace函数怎么使用呢?

Python中查找与替换字符

replace函数有三个参数,分别是要被替换的原始串,要替代的目标串,以及要替换的次数,这里我们来看一下示例:

对于原始的文本

"aaabbbccc".replace("b","d",2)

以上代码的意思是将原始字符串aaabbbccc,出现的b替换成d,替换2次,于是replace输出的结果是aaaddbccc,说到这里您应该就能明白replace函数的使用办法了吧

我们回到代码中再演示一遍

#字符串替换str1="this is string example...wow!!! this is really string"

#调用replacepstr=str1.replace("is","was")

print(pstr)

运行后的结果

thwas was string example...wow!!! thwas was really string

我们可以看到在原始字符串中有4处符合的地方

我们可以指定替换次数#字符串替换

str1="this is string example...wow!!! this is really string"

#调用replacepstr=str1.replace("is","was",3)

print(pstr)

输出的结果:thwas was string example...wow!!! thwas is really string

和之前输出的结果不同,如果后面不增加替换次数,就默认为全部替换。

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:Python培训笔记-认识Debug工具、数据类型、type函数
下一篇:Python培训笔记-元类相关知识

2021年Python全套免费视频教程在哪里?

Python编程学习路线

Python最高有几级?

人工智能与语音遥控的区别?

  • 扫码领取资料

    回复关键字:视频资料

    免费领取 达内课程视频学习资料

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省