python中的find()函数以及replace()函数

帅比萌擦擦* 提交于 2020-01-31 02:09:26

最近在学习python过程中,对print()打印输出函数进行了进一步学习,在此过程中,参考借鉴了《编程小白的第1本python入门书》,(侯爵著)一书的部分内容,同时也在python的菜鸟教程中借鉴了诸多,这确实是一个非常好的网站,大家初学编程语言的同学可以到此网站去看看。网站地址https://www.runoob.com

replace()函数
replace()格式:
str.replace(old,new[,max])
old–将被替换的字符串
new–新字符串,用于替换old字符串
max–被替换的次数,替换不超过max次

我们经常会遇到这么一个情景。在一些网站上使用一些手机号、证件号等一些信息注册时,为了避免信息泄露,通常这些信息会被自动遮挡后四位,即用“*”替代遮挡所需遮挡的信息。我们可以通过replace()函数实现这个功能。

 phone_number="168-6868-1234"
hiding_number=phone_number.replace(phone_number[9:],"*"*4)
print(hiding_number)

 #程序运行结果
168-6868-****

我们通过下面一个例子可以看一看replace()函数第三个参数的作用。

str="only when you try you best to do sth can you make a great achievement"
 print( str.replace("you","we",1))
 print( str.replace("you","we",2))

#程序运行结果
only when we try you best to do sth can you make a great achievement
only when we try we best to do sth can you make a great achievement

find()函数
find()格式:
str1.find(str2,beg=0,end=len(str1))
str2–指定检索的字符串
beg–开始检索的位置,默认为0
end–结束索引的位置,默认为字符串的长度

print(str1.find("world")

#程序运行结果
6

print(str1.find("world",7))

#程序运行结果
-1

find()函数
find()格式:
str1.find(str2,beg=0,end=len(str1))
str2–指定检索的字符串
beg–开始检索的位置,默认为0
end–结束索引的位置,默认为字符串的长度

我们通过下面一个例子了解finf函数的三个参数的作用。

str1="hello world!"
print(str1.find("world"))
print(str1.find("world",7))

#程序运行结果
6
-1

我们发现,如果查找不到指定检索的字符串,返回值为 -1

在这里插入图片描述

我们来模拟手机电话号码的联想功能

str1="168"
str2="155-1688-9090"
str3="168-8917-8080"
print("168 is at "+str(str2.find(str1))+" to "+str(str2.find(str1)+len(str1))+"of str2")
print("168 is at "+str(str3.find(str1))+" to "+str(str3.find(str1)+len(str1))+"of str3")

#程序运行结果
168 is at 4 to 7of str2
168 is at 0 to 3of str3

注:以上手机号码均为临时乱编写的

文章内容如有错误,敬请大家批评指正!谢谢!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!