(1) 索引:返回字符串中单个字符
<字符串>[M],如val[-1]
(2) 切片:返回字符串中一段字符子串
格式:<字符串>[start:end:[step]],表示截取从start开始,到end-1结束,每step个字符提取一个所构成的子串,两个索引都可以省略,start省略表示开头,end省略表示至结尾。如val[0:-1]
(3) 类型转换:大多数数据类型都可以通过str()函数转换,如str(1234) #直接变成字符串'1234'
>>>s='ILovePython'
>>>s[0:5] #切取字符串s中索引下标为0~4的子串
'ILove' #输出结果子串
>>>s[-6:] #切片范围省略了尾下标,默认表示切取到最后一个字符
'Python' #输出索引为-6~1范围内的结果子串
>>>s[:5] #切片范围省略了头下标,默认表示从第一个字符开始切片
'ILove' #输出索引为0~4范围内的结果子串
>>>s[1:9:2] #从索引1提取到索引8,每2个字符提取一个
'LvPt'
(4) 求字符串长度
len()方法的格式为:len(seq),表示查看指定字符串的长度。
len()方法同样可以用于其他数据类型,例如列表,元组以及字典等。
>>>name="Hello,Python"
>>>len(name) #计算字符串name的长度
12
(5) 查找:index()方法
格式为:str.index(sub[,start[,end]])
其中,sub表示要查找的元素;
start表示起始查找位置;
end表示结束查找位置
>>>s='Python is funny.'
>>>s.index('n',6,13)
12 #在[6,13]范围内查找到的字符'n'的索引值为12
>>>s.index('py') #查找子串'py'
Traceback(most recent call last):File"<stdin>",line 1,in<module>
ValueError:substring not found #未找到子串'py',输出异常
find()和rfind()方法分别用来查找一个字符串在另一个字符串指定范围(默认是整个字符串)中首次和最后一次出现的位置,如果不存在则返回-1;find()方法的格式为str.find(sub[,start[,end]]),与index()方法的区别:当查找匹配不成功时,find()方法返回-1,而index()方法抛出异常。
>>>s="apple,peach,banana,peach,pear"
>>>s.find("peach")
6
>>>s.find("peach",7)
19
>>>s.find("peach",7,20)
-1
>>>s.rfind('p')
25
(6) 查找替代
replace(),类似于Word中的"全部替换"功能。
>>>s="中国,中国"
>>>print(s)
中国,中国
#两个参数都作为一个整理
>>>s2=s.replace("中国","中华人民共和国")
>>>print(s2)
中华人民共和国,中华人民共和国
例.测试用户输入中是否有敏感词,如果有的话就把敏感词替换成3个星号***。
>>>words=('测试','非法','暴力','话')
>>>text='这句话里含有非法内容'
>>>for word in words:
if word in text:
text=text.replace(word,'****')
>>>text
'这句***里含有***内容'
(7) 分割操作
split()方法的格式为:str.split(sep,num)[n]
参数sep表示指定的分隔符,可以省略,默认是空格;
num表示分割次数,将字符串分割成num+1个子字符串;
[n]:表示选取返回的列表中下标为n的元素,下标从0开始。
>>>s="2017-10-31"
>>>t=s.split("-")
>>>print(t)
['2017','10','31']
>>>str='www.upc.edu.cn'
>>>str.split() #使用默认分隔符分割字符串str
['wwww.upc.edu.cn'] #把整个字符串作为列表的一个元素返回了
>>>str.split('.') #指定分隔符'.',分割字符串str
['wwww','upc','edu','cn'] #以分隔符'.'把字符串分成多个子串,形成列表
>>>str.split('.',2) #指定分隔符'.',并且指定分割次数为2次
['wwww','upc','edu.cn'] #以分隔符'.'把字符串分成2+1个子串,形成列表
>>>str.split('.')[1] #指定分隔符'.',并取序列下标为1的项
'upc' #分割后下标为1的列表元素
(8) 连接操作----join方法实现字符串连接
join方法的格式为:
'sep'.join(seq)
其中,sep表示分隔符,可以为空;seq表示要连接的元素序列。
>>>ls=['2020','08','15'] #创建列表ls,其元素字符串
>>>'-'.join(ls)
'2020-08-15' #将ls中的3个字符串以分隔符'-'连接成一个字符串
(9) 统计操作
count()实现统计字符串里某个字符串出现的次数
它的格式为:str.count(sub,[start,[end]])
其中,参数sub需要统计的子串;
start表示字符串开始搜索的位置,可以省略,默认为第一个字符;
end表示字符串中结束搜索的位置,可以省略,默认为字符串的最后一个位置。
>>>everyday='Nothing is impossible.'
>>>everyday.count('i') #统计字符串中'i'出现的次数
(10) 字符串其它操作
操作符及使用 | 描述 |
x + y | 连接两个字符串x和y |
n * x或x * n | 复制n次字符串x |
x in s | 如果x是s的子串,返回Ture,否则返回Flase |
”Hello"+"world!" #=>"Hello world!"
"Hello"*3 #=>"HelloHelloHello"
>>>'a' in 'abc'
Ture
>>>'ac'in'abcd'
False
知识点整理不易,如果对你有帮助,给个免费的赞支持一下吧!感谢阅读!