Python 字符串内置方法笔记

  

一. 大小写转换

① capitalize()

capitalize() #字符串首字母大写

>>> str0 = 'hello World' >>> str0.capitalize() 'Hello world' 

②upper(), lower()

upper() #将字符串的所有小写字符转化为大写
lower() #将字符串的所有大写字符转化为小写

>>> str1 = 'Hello World' >>> str1.upper() 'HELLO WORLD' >>> str1.lower() 'hello world' 

③swapcase()

swapcase() #将字符串中的大写字符改为小写,小写字符改为大写

>>> str1 = 'Hello World' >>> str1.swapcase() 'hELLO wORLD' 

二. 内容判断

①startswith(),endswith()

startswith() #判断字符串是否以指定参数开始,返回True或False
endswith() #判断字符串是否以指定参数结束,返回True或False

>>> str1 = 'Hello World' >>> str1.startswith('h') False >>> str1.endswith('d') True 

tip:判断时大小写是要区分的,可以添加第二、三个参数来限定范围。

②isupper(),islower()

isupper() #如果字符串中的字母均为大写返回True,否则返回 False
islower() #如果字符串中的字母均为小写返回True,否则返回 False

>>> str1 = 'Hello World' >>> str2 = '123asdxfgs...' >>> str1.isupper() False >>> str2.islower() True 

tip:字符串中可以含数字和特殊字符

③isalpha(),isdigit(),isalnum()

isalpha() #如果字符串中只包含字母返回 True,否则返回 False
isdigit() #如果字符串中只包含数字返回 True,否则返回 False
isalnum() #如果字符串中只包含字母或数字返回 True,否则返回 False

>>> str3 = '123456789' >>> str2 = '123asdxfgs...' >>> str3.isalpha() False >>> str3.isdigit() True >>> str2.isalnum() False 

三. 内容查找

find(),rfind(),index(),rindex()

find() #查找指定参数是否在字符串中,查找成功返回字符下标,失败则返回-1
rfind() #功能和find()一致,但查找方向从右边开始
index() #和find功能一样,但查找失败会产生错误
rindex() #功能和index()一致,但查找方向从右边开始

>>> str2 = '123asdxfgs...' >>> str2.find('123') 0 >>> str2.find('1234') -1 >>> str2.index('x') 6 >>> str2.index('b') Traceback (most recent call last): File "<pyshell#33>", line 1, in <module> str2.index('b') ValueError: substring not found >>> str4 = 'test88ooo88' >>> str4.find('88') 4 >>> str4.rfind('88') 9 

tip:可以加上第二、三个参数来限制范围。

四. 替换, 添加, 删除

①strip(),lstrip(),rstrip()

strip() #默认删除字符串前后的空格,若加上参数,则改为删除字符串前后的该参数
lstrip() #去掉字符串前面的空格,若加上参数,则改为删除字符串前的该参数
rstrip() #删除字符串末尾的空格,若加上参数,则改为删除字符串后的该参数

>>> str5 = ' content ' >>> str5.lstrip() 'content ' >>> str5.rstrip() ' content' >>> str5.strip() 'content' >>> str5.strip('t') ' content ' >>> str6 = '123and123' >>> str6.strip('123') 'and' >>> str6.lstrip('123') 'and123' 

tip:strip()只能删除字符串前后的指定内容,不能误解为删除该字符串中所有的该字符,若想实现此功能,建议使用replace()

②replace()

replace(old,new[,count]) #将字符串中的所有old用new替换,若使用count参数,则替换次数不超过count次。

>>> str7 = 'xxHxexlxxlxo Wxxxxorld' >>> str7.replace('x', '') 'Hello World' >>> str7.replace('x', 'A') 'AAHAeAlAAlAo WAAAAorld' >>> str7.replace('x', 'A', 1) 'AxHxexlxxlxo Wxxxxorld' 

③format()

format() #格式化字符串

>>> "姓名:{}, 性别:{}".format('张三','男') '姓名:张三, 性别:男' >>> "姓名:{a}, 性别:{b}".format(b='男',a='张三') '姓名:张三, 性别:男' 

tip:常与{}一起使用,参数个数由自己决定。

④join()

join() #以原字符串作为分隔符,插入到参数中每个字符之间。

>>> str_break = 'xx' >>> str_break.join('AB') 'AxxB' >>> str_break.join('ABC') 'AxxBxxC' 

五. 分割

①split(), rsplit()

split() #以第一个参数为分隔符分割字符串,返回一个列表
rsplit() #和split()功能相同,但是从右边开始分割

>>> str8 = 'AxxBxxC' >>> str8.split('xx') ['A', 'B', 'C'] >>> str8.split('x') ['A', '', 'B', '', 'C'] >>> str8.split('xxx') ['AxxBxxC'] 

tip:可以加上第二个参数限制次数。

>>> str8.split('xx', 1) ['A', 'BxxC'] 

②partition(),rpartition()

partition() #将字符串从参数处分成'参数前','参数','参数后'三段,返回一个三元元组
rpartition() #功能和partition()一致,但从右边开始

>>> str8 = 'AxxBxxC' >>> str8.partition('xx') ('A', 'xx', 'BxxC') >>> str8.rpartition('xx') ('AxxB', 'xx', 'C') >>> str8.partition('zzz') ('AxxBxxC', '', '') 

tip:若找不到参数,则返回('字符串', '', '')

六. 计数

count()

count() #参数为字符串的一个子串,返回该子串出现的次数

>>> str8 = 'AxxBxxC' >>> str8.count('xx') 2 

tip:可以加上第二,三个参数来限定范围。

七、其他

center()

center() #将某字符串居中,并以指定字符填充至指定长度。

>>> "test".center(20, '*') '********test********'

猜你喜欢

转载自www.cnblogs.com/68xi/p/11621959.html
今日推荐