Python中字符串类型的10+种操作

本文详细介绍了Python中字符串的各种操作,包括索引、切片、类型转换、求字符串长度、查找、替换、分割、连接、统计和其它操作。例如,使用`s[0:5]`切取字符串前五个字符,`str(len(s))`获取字符串长度,`s.replace('old', 'new')`替换字符串中的子串,`s.split('.')`按点进行字符串分割,以及`''.join(lst)`将列表元素连接成字符串等。
摘要由CSDN通过智能技术生成

(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()方法分别用来查找一个字符串在另一个字符串指定范围(默认是整个字符串)中首次和最后一次出现的位置,如果不存在则返回-1find()方法的格式为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

知识点整理不易,如果对你有帮助,给个免费的赞支持一下吧!感谢阅读!

 

 

 

 

版本信息 : 软件名称:1234笔画输入法    最新版本:2.0 软件大小:6.20M         软件语言:简体文 软件授权:免费版          简介: 1234笔画输入法 是一款入门级文输入法软件,其主要用途是帮助不会拼音五笔的网友最直接有效的输入文字。这是一款专业的笔画输入法,它简单、实用、免费,轻松解决,打字问题!是业余上网与使用电脑的好帮手! 使用演示动画1: 0.gif 使用演示动画2: 1.gif 更多可选输入模式(点此查看) 它能做什么: 几乎不用学习就能用1234笔画输入法来打字,与手机上的笔画输入方法一样,简单直接。它支持分词键输入词语,它支持大键盘和小键盘打字,同时也支持鼠标点击轻易输入!虽然打字没拼音输入法和五笔输入法快,但可以很轻易的打出自己想打的字,这对很多人来说已经足够了! 使用教程: 输入方法简介 : 1.单字输入 (点此查看) 2.词语输入 (点此查看) 使用大键盘与小键盘打字: 1.大键盘输入(点此查看) 2.小键盘输入(点此查看) ==================================================================== 1234笔画输入法 2.0 更新说明: 1.修复单字输入规则经过切换后再切换回来时导致有的字无法打出问题。 2.修复部分系统笔画键显示不完整问题。 3.修复小键盘确认选字键不合理问题。 4.添加自造词保存键。 5.新增导入词语与联想词库功能。 6.本次更新还包括:修正已知的错误、部分不合理的功能得到优化与调整! -- 2014-3-12
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张同学啦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值