一、center\rjust\ljust
限制长度,长度不足,填充指定字符
举例:
print('abc'.center(7, 'x'))
print('abc'.ljust(7, '+'))
print('abc'.rjust(7, '*'))
运行结果:
xxabcxx
abc++++
****abc
zfill == rjust填充字符是固定0
举例:
print('abc'.zfill(7))
运行结果:
0000abc
二、count
统计个数
举例:
message = 'how are you? i am fine. and you?'
print(message.count('a')) # 统计字符串message中字符a出现的次数
print(message.count('you'))
print(message.count('a', 0, 10)) # 在下标0到9的范围内统计 'a' 的次数
运行结果:
3
2
1
三、index/find
查找子串的位置
举例:
message = 'how are you? i am fine. and you?'
print(message.index('you')) # 8
print(message.find('you')) # 8
# print(message.index('you+')) # 没有的时候, 报错! ValueError: substring not found
print(message.find('you+')) # 没有的时候, 不会报错, 返回-1
运行结果:
8
8
-1
注: index中,没有指定字符串时,报错! ValueError: substring not found
find中,没有指定字符串时, 不会报错, 返回-1
四、join
字符串.join(序列) - 将序列中的元素用指定字符串拼成一个新的字符串(序列中的元素都是字符串)
举例:
list1 = ['name', 'age', 'sex']
print(''.join(list1))
print(' '.join(list1))
print('abc'.join(list1))
print('+'.join('abc'))
print('='.join({'a': 10,'b': 20}))
运行结果:
nameagesex
name age sex
nameabcageabcsex
a+b+c
a=b
五、lstrip/rstrip/strip
删除空白(空白:空格、回车、Tab键)
message = '\n\t abc \t 123'
print('=====')
print('原字符串', message,'----')
print('=====')
new1 = message.lstrip()
print('lstrip', new1,'-----', sep='')
print('=====')
new2 = message.rstrip()
print('lstrip', new2, '-----', sep='')
print('=====')
new3 = message.strip()
print('strip', new3, '-----', sep='')
message = 'aaaa你好吗aaaaaa'
print(message.lstrip('a'))
运行结果:
=====
原字符串
abc 123 ----
=====
lstripabc 123-----
=====
lstrip
abc 123-----
=====
stripabc 123-----
你好吗aaaaaa
六、maketrans和translate
举例:
table = str.maketrans('ab', '12') # 创建映射表: a-1, b-2, c-好
new_str1 = 'abc'.translate(table) # 按照指定的映射表将原字符串中的字符进行替换
print(new_str1) # 12c
运行结果:
12c
七、replace
字符串1.replace(字符串2, 字符串3) - 将字符串1中字符串2全部替换成字符串3
举例:
message = 'how are you? i am fine. and you?'
new_str2 = message.replace('you', 'me')
print(new_str2) # how are me? i am fine. and me?
new_str2 = message.replace('you', 'me', 1) # 1是替换次数
运行结果:
how are me? i am fine. and me?
八、split
字符串1.split(字符串2) - 将字符串2作为切割点对字符串进行分隔
注:返回的是列表
举例:
message = 'how are you? i am fine. and you?'
print(message.split(' '))
运行结果:
['how', 'are', 'you?', 'i', 'am', 'fine.', 'and', 'you?']