Python字符串相关函数

本文详细介绍了Python中字符串处理的几个关键函数,包括split()和join()用于字符串与列表转换,find(),rfind(),index(),rindex(),startswith(),endswith()进行查找,lower(),upper(),title()进行字母大小写转换,replace()和translate()进行替换,以及strip()用于删除空白字符。
摘要由CSDN通过智能技术生成

目录

1. split和join(字符串与列表之间相互转化)

1.2 join

2.查找元素

2.1 find和rfind

2.2 index和rindex

2.4 startswith和endswith

3.字母大小写转换

3.1 lower和upper以及title

4.替换元素

4.1 replace

4.2 translate

5.strip


1. split和join(字符串与列表之间相互转化)

1.1 split

split主要用于将字符串拆分为列表,拆分点为split自己设置的分隔符,比如

 a='1+2+3+4+5'
 b=a.split('+')
 print(b) #['1', '2', '3', '4', '5']

这里就是以+为分割符拆分a

当然,当split后面没有自己设置的分隔符时,它就默认为空白字符

 a="how are you?"
 b=a.split()
 print(b) #['how', 'are', 'you?']
1.2 join

join则是将列表合并为字符串,当然你也可以在列表的每两个元素之间加入你想要的分隔符

 
a=['1', '2', '3', '4', '5']
 b='+'.join(a)
 print(b) #1+2+3+4+5

当然当join前面什么也不加时默认没有分隔符

a=['1', '2', '3', '4', '5']
 b=''.join(a)
 print(b) #12345

要注意一点,只有a中元素全部为字符串时join才能运行,如果出现数字及其列表之类的就会报错

 a=[1,2,3,4,5]
 b=''.join(a)
 print(b)
 #Traceback (most recent call last):
 #  File "D:\PythonApplication2\PythonApplication2.py", line 60, in <module>
 #    b=''.join(a)
 #TypeError: sequence item 0: expected str instance, int found
2.查找元素
2.1 find和rfind

find用于查找字符串中的字串,找到时返回子串中第一个字串的索引,没有找到则返回-1

a='hello world hello world'
 b=a.find('wo')
 print(b) #6
 c=a.find('nihao')
 print(c) #-1

rfind和find都是查找字符串中的字串,不过rfind是从后往前找,当然也可以理解为返会最后一个所找的字串 索引,没有则返回-1

 a='hello world hello world'
 b=a.rfind('wo')
 print(b) #18
2.2 index和rindex

index和rindex基本和find和rfind一样,唯一不同的是当index和rindex没有找到子串时不会返回-1,会直接报错

 a='hello world hello world'
 b=a.index('wo')
 print(b) #6
 c=a.index('nihao')
 print(c) 
 #Traceback (most recent call last):
 #  File "D:\PythonApplication2\PythonApplication2.py", line 62, in <module>
 #    c=a.index('nihao')
 #ValueError: substring not found
2.4 startswith和endswith

startswith是判断字符串是否是以指定字符串为开头,是则返回True,没有则返回False

 a='hello world hello world'
 b=a.startswith('hell')
 print(b) #True
 c=a.startswith('heu')
 print(c) #False

endswith是判断字符串是否是以指定字符串为结尾,是则返回True,没有则返回False

a='hello world hello world'
 b=a.endswith('rld')
 print(b) #True
 c=a.endswith('wld')
 print(c) #False
3.字母大小写转换
3.1 lower和upper以及title

lower返回字符串小写版本

a="Ni Hao ZYPC"
 b=a.lower()
 print(b) #ni hao zypc

upper则返回字符串大写版本

a="Ni Hao asdf"
 b=a.upper()
 print(b) #NI HAO ASDF

title将字符串中每个单词的首字母大写,其余的小写

 a="this is a gOOD friend"
 b=a.title()
 print(b) #This Is A Good Friend
4.替换元素
4.1 replace

replace将字符串中指定字串都替换为另一字串

a='This is an apple'
 b=a.replace('is','az') #这里将is都替换为iz
 print(b) #Thaz az an apple
4.2 translate

translate和replace都可以将将字符串中指定字串都替换为另一字串,但replace是将整体替换,以is替换为az为例,replace是在字符串中找到所有的is,然后将is替换为az,而translate则是将所有的i替换为a,再将所有的s替换为z,即实现逐个替换

但在用translate之前要创建一个转移表,即

 t=str.maketrans('is','az')
 a='This is an aiile'
 b=a.translate(t)
 print(b) #Thaz az an azzle

当然,还可以提供一个参数给maketrans,作为要删除的元素,比方说要删除l

t=str.maketrans('is','az','l')
 a='This is an aiile'
 b=a.translate(t)
 print(b) #Thaz az an aaae

这里还可以删除空格

 t=str.maketrans('is','az',' ')
 a='This is an aiile'
 b=a.translate(t)
 print(b) #Thazazanaaale
5.strip

strip用于删除字符串开头和末尾的空白

 a='     hello world     '
 b=a.strip()
 print(b) #hello world

lstrip用于删除字符串开头空白

 a='     hello world     '
 b=a.lstrip()
 print(b) #hello world    (这里右边还有四个空格)

rstrip用于删除字符串末尾空白

 a='     hello world     '
 b=a.lstrip()
 print(b) #     hello world
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值