1.大小写转换
lower()–全部变为小写,upper()–全部变成大写
1 | 'ab XY'.lower()) print( |
title() –每个单词首字母为大写,其余小写,capitalize()–整个字符串的首字母为大写,其余小写
1 | 'ab XY'.title()) print( |
swapcase()–对字符串做大小写转换,大变小,小变大
1 | 'abc XYZ'.swapcase()) print( |
2.isxxx
isdigit()–判断是否全是数字,isalpha()–判断是否全是字母,isalnum()–判断是否是数字或字母
1 | '34'.isdigit()) print( |
lower()–判断是否全小写,isupper()–判断是否全大写
1 | 'a34'.islower()) print( |
istitle()–判断是否每个单词的首字母大写
1 | 'Aa_Bc'.istitle()) print( |
isspace()–判断字符串是否为空白(空格、制表符、换行符等)
1 | ' '.isspace()) print( |
3.填充
center(填充后的宽度,填充物【默认空格】)–将字符串居中,左右用填充物填充,使字符串长度为设定长度
1 | 'ab'.center(4,'_')) print( |
ljust(填充后的宽度,填充物【默认空格】)–填充在字符串的右边rjust(填充后的宽度,填充物【默认空格】)–填充在字符串的左边
1 | 'xyz'.ljust(5,'_')) print( |
zfill(填充后的宽度)–用0填充在字符串的左边。若字符串前面有+或-,0填充在这个后面。
1 | 'abc'.zfill(5)) print( |
以上,若宽度小于字符串本身的长度,直接返回原字符串
4.子串搜索
count(需查找的子串,开始,结束)–返回出现的次数,指定从哪里开始哪里结束。索引从0开始算,不含end边界
1 | # 次数1,因为不包括end,所以查找的范围为'yabxyx' |
endswith(子串,开始,结束)–检查是否以该子串结尾,可指定搜索边界。
1 | # False,因为搜索范围为'abcxy' |
startswith(子串,开始,结束)–检查是否以该子串开头,可指定搜索边界。该子串可以是一个元组tuple,只要其中任意一个元素满足条件,就返回true.
find(子串,开始位置,结束位置)–搜索是否包含子串,包含的返回索引位置,否则返回‘-1’
rfind(子串,开始位置,结束位置)–返回搜索到最右面子串的位置,如果只有一个或没有,就和find相同
1 | 'xyzabcabc'.find('bc')) print( |
index(子串,开始位置,结束位置)–搜索是否包含子串,包含的返回索引位置,否则抛出ValueError错误
rindex(子串,开始位置,结束位置)–返回搜索到最右面子串的位置,如果只有一个或没有,就和index相同
1 | 'xyzabcabc'.rindex('bcd')) print( |
使用in操作符来判断字符串S是否包含子串sub,它返回的不是索引位置,而是布尔值。
1 | 'xy' in 'abxycd' |
5.替换
replace(old,new,count)–将old替换为new,若给定count,则表示只替换前count个old子串。搜索不到old,直接返回原字符串 。
1 | 'abcxyzoxy'.replace('xy','XY')) print( |
6.分割
partition(子串)、rpartition(子串)–搜索子串,并从该子串处对整个字符串进行分割最后返回一个三元素的元组。
partition()从左边第一个子串分割,rpartition()从右边第一个子串分割# 搜索到多个sep时,分别从左第一个、右第一个sep分割。
1 | 'abcxyzxyopq'.partition('xy')) print( |
7.join
(iterable)–将可迭代对象(iterable)中的字符串使用S连接起来。
注意,iterable中必须全部是字符串类型,不能包含数字或其他类型例如:字符串
1 | 'python' L= |
元组
1 | '1','2','3') L1=( |
集合。注意,集合无序。
1 | 'p','y','t','h','o','n'} L2={ |
列表
1 | 'py','th','o','n'] L2=[ |
字典
1 | >>>L3={'name':"malongshuai",'gender':'male','from':'China','age':18}>>> '_'.join(L3) |
iterable参与迭代的部分必须是字符串类型,不能包含数字或其他类型。
1 | 1,2,3) L1=( |
以下两种也不能join。
1 | 'ab',2) L1=( |
8.修剪:strip、lstrip、rstrip
strip([chars])–移除左右两边的字符char
lstrip([chars])–移除左边的字符char
rstrip([chars])–移除右边的字符char
若不指定chars或指定为none,则默认移除空白(空格,制表符,换行符),唯一需要注意的是,chars可以是多个字符序列。在移除时,只要是这个序列中的字符,都会被移除。
例如:
1.移除单个字符或空白。
1 | ' spacious '.lstrip() |
2.移除字符中的字符。
1 | 'www.example.com'.lstrip('cmowz.')) print( |