在 python 中字符串有许多内置的方法,在日常编程中会经常使用到,熟练运用了能够在很多场景大大的提高我们的工作效率,当然 str 内置方法有很多,这里我只说常用的如下
1. 对于 find 和 index 使用代码如下
s1 = "hello world"
print(s1.find("e")) # 结果为1 返回索引值最小的
print(s1.find("o")) # 结果为4 有2个o,这里返回最小的为4
print(s1.find("c")) # 查找没有c,返回的结果默认为 -1
print(s1.rfind("o")) # 返回结果为 7
注意:find 与 index 两者使用的方法都是一样的,只是 find 在查找字符串中没有该值的时候,会默认返回 -1 这个值,而 index (索引)如果在字符串中没有查找到的话,就会报错
2. replace 方法很常用,使用代码如下
s = "hello oldoldchenzilong"
print(s.replace("old", "beautiful")) # 默认两个都被替换了
print(s.replace("old", "beautiful", 1)) # 可以添加参数1,替换第一个old
print(s.replace("old", "beautiful", 2)) # 将参数设置为2,2个都被替换了
print(s.replace("old","young")) # 默认原来的两个old 都被替换了
输出的结果如下图:
在字符串里的方法 replace 方法很常用,例如有这样一个场景:你在做接口测试的时候,接口中响应 body 里面通常是类似于key -value的形式,你怎么样将该数据的单引号转化成双引号,就是json的双引号数据格式,这里就可以使用 replace,如下图
# 给我一个需要做变更的数据
a = {'hello':'chenzilong'}
# 先将该数据写成字符串的格式
a = '{'hello':'chenzilong'}'
# 使用 replace 方法,将单引号替换成双引号
print(a.replace("'",'"'))
输出的结果如下图
3.split 方法 代码如下
s = "hello everybody come man!"
print(s.split(" ")) # 以空格字符串进行分割,输出为一个列表 list 并且空格消失
print(type(s.split(" "))) # 打印输出数据的 数据类型为 list
split 方法使用也较为频繁,可以理解为分割成什么样的数据,然后将分割的不同块进行拼接成一个列表 (list)的数据格式,结果如下图
4.startswith 和 endswith 方法使用代码如下
print(s.startswith("he")) # 打印字符串以什么内容作为开头,返回 bool 值
print(s.endswith("an!")) # 打印字符串以什么内容结尾,返回 bool 值
5.strip 的使用代码如下
s3 = " 独领风骚"
print(s3.strip()) # 去除字符串前后的空格
s4 = "独领 风骚"
print(s4.replace(" ","")) # 将空格去掉,默认是将所有原来s4里面的空格全部替换成没有空格
s8 = "你好赵子龙同学"
print(s8.replace(""," ")) # 使用 replace 去给原来的字符串添加空格的时候,会在字符串的值前后都加,通过len 打印长度为15
strip 与 replace 用法的区别:
strip 方法只能去掉字符串的前后的空格,而我们 replace 是可以替换字符串中间的空格
输出的结果如下
6.join 的使用代码如下
s8 = "你好赵子龙同学"
print(" ".join(s8))
# 定义一个列表
s9 = ["你好","世界"]
print(" ".join(s9))
# 定义一个元组
s10 = ("天下","无敌") # s8 为字符串(str),s9 为列表(list),s10 为元组(tuple)这些都是序列的数据结构
# 都可以使用join方法进行迭代原来的数据内容
print(" ".join(s10))
print(type(s10))
列表、字符串、元组 这三种数据类型都是序列的数据结构,都可以使用 join 这个方法去去掉空格,如下图
7.lower、upper、isalpha、isdigit、isalnum这些用法较为简单,很好理解,这里不再赘述了,可以去创建一个 python 文件去学习一下
关于 python 中的 str 字符串内置方法就学习到这里了