一些常用的字符串方法
程序员文章站
2022-07-14 09:40:14
...
- center 通过在两边填充字符(默认为空格)让字符串居中
center(width, fillchar ) 指定的宽度 width 居中的字符串,fillchar 为填充的字符
>>> str = "[name,sex,class,degree]"
>>> str.center(40,'*')
'********[name,sex,class,degree]*********'
- find 检测是否包含在字符串中,如果包含则返回开始的索引值,否则返回-1。可以指定范围
>>> str = "[name,sex,class,degree]"
>>> str.find('name')
1
>>> str.find('name',3,9)
-1
>>> str.find('class',4)
10
- join 用于合并序列的元素
>>> s1 = '-'
>>> s2 = ''
>>> seq = ('r','e','s','t')
>>> s1.join(seq)
'r-e-s-t'
>>> s2.join(seq)
'rest'
>>> seq = ['1','2','3','4']
>>> s1 = '+'
>>> s1.join(seq)
'1+2+3+4'
>>> seq = [1, 2, 3, 4, 5]
>>> sep = '+'
>>> sep.join(seq) # 尝试合并一个数字列表
Traceback (most recent call last):
File "<stdin>", line 1, in ?
TypeError: sequence item 0: expected string, int found
可以发现,所合并的元素必须都是字符串。
4. split 其作用与join相反,用于将字符串拆分为序列。
如果没有指定分隔符,将默认在单个或多个连续的空白字符(空格、制表符、换行符 等)处进行拆分。
格式:str.split(str="", num=string.count(str))
str --分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
num – 分割次数。默认为 -1, 即分隔所有。
>>> str = 'this is a book'
>>> str.split() #以空格为分隔符
['this', 'is', 'a', 'book']
>>> str.split('i',1) #以i为分隔符,分隔1次
['th', 's is a book']
>>> str.split('i') #以i为分隔符,分隔所有
['th', 's ', 's a book']
>>> str.split('s') #以s为分隔符,分隔所有
['thi', ' i', ' a book']
- lower 返回字符串的小写版本。 特别是在查找一个人名时,大小写不一致会查不到,这个时候lower会很有用。
>>> seq = 'CONTUNE'
>>> seq.lower()
'contune'
>>> seq = 'CONTUNE'
>>> seq.lower()
'contune'
>>> name = 'Alice'
>>> names = ['alice','smith','andy']
>>> if name.lower() in names:print('found it!')
...
found it!
- upper 将字符串中的小写字母转为大写
>>> str = 'this is a book'
>>> str.upper()
'THIS IS A BOOK'
- replace 将指定子串都替换为另一个字符串,并返回替换后的结果
语法:str.replace(old, new)
>>> str = '2019年研究生招生信息网'
>>> print(str)
2019年研究生招生信息网
>>> str.replace('2019','2020')
'2020年研究生招生信息网'
- strip 将字符串开头和末尾的空白(不包括中间的空白)删除,并返回删除后的结果。
lstrip 删除左边的空白字符
rstrip 删除右边的空白字符
>>> str =' this is a book '
>>> str.strip()
'this is a book'
>>> str.lstrip()
'this is a book '
>>> str.rstrip()
' this is a book'
上一篇: 一些常用的字符串方法
下一篇: 一些常用的字符串操作