字符串方法总结
1、strip()
描述:用于脱去字符串两边指定的字符(默认为空格)。
参数:chars 要脱去的子字符串
返回值:返回脱去子字符串后而生成的新字符串。
s = ' Hello World ' print('原字符串>>>>',s,'<<<<') s1 = s.strip() print('更改后的字符串>>>>',s1,'<<<<<')
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
原字符串>>>> Hello World <<<<
更改后的字符串>>>> Hello World <<<<<
示例2
s = '*****Hello World*****' print('原字符串>>>>',s,'<<<<') s1 = s.strip('*') print('更改后的字符串>>>>',s1,'<<<<<')
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
原字符串>>>> *****Hello World***** <<<<
更改后的字符串>>>> Hello World <<<<<
3、count()
描述:用于统计字符串里指定字符出现的次数。
参数:sub 查询的子字符串
start 开始索引。默认为第一个字符,第一个字符索引值为0
end 结束索引。字符中第一个字符 的索引为0。默认字符串的最后一个位置
返回值:返回整型,指定的字符在字符串中出现的次数。
s = 'hello world' s1 = s.count('l') print(type(s1),s1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'int'> 3
s = 'hello world' s1 = s.count('l',3,10) # 表示统计从索引位置3到9位置(顾首不顾尾)的子串的个数 print(type(s1),s1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'int'> 2
4、split()
描述:分隔字符串
参数:sep 分隔符
maxsplit 最多分隔的次数
返回值:返回分割后的字符串列表
s = 'hello world' s1 = s.split() # 括号内什么不加默认以空格为分隔符 print(type(s1),s1)# 得到一个列表
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'list'> ['hello', 'world']
5、replace()
描述:子串替换
参数:old 要替换的字符串
new 新的字符串
count 替换次数
返回值:去掉字符串中的旧字符串,替换成新字符串后生成一个新的字符串。
s = 'hello world' s1 = s.replace('world','python') print(type(s1),s1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'str'> hello python
s = 'hello world world' s1 = s.replace('world','python',1) # 只替换第一个world print(type(s1),s1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'str'> hello python world
6、index()(空格也占位)
描述:查找字符串,返回子串的索引,使用方法与find相同,不同之处是若查找的子串不存在会报错
参数:sub 查找的子字符串
start 查找的起始位置
end 查找的结束位置
返回值:若包含子字符串则返回开始的索引值,否则抛出异常。
s = 'hello world' s1 = s.index('world') # 如果要查找的子字符串没有,则会抛出异常。 print(type(s1),s1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'int'> 6
s = 'hello world' s1 = s.index('o',5,10) # 表示从索引5至索引10的位置的开始查找字符“o“的所在的索引位置。 print(type(s1),s1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'int'> 7
7、capitalize()
描述:将字符串的首字母大写
参数:无
返回值:返回一个新的首字母大写的字符串对象。
s = 'hello world' s1 = s.capitalize() # 将s字符串的首字母大字 print(type(s1),s1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'str'> Hello world
8、center()
描述:让字符串居中对齐
参数:width 宽度,返回字符串长度
fillchar 填充字符,不填默认以空格为填充字符
返回值:返回新的居中对齐的字符串
s = 'hello world' s1 = s.center(26) # 字符串在26个空格中间 print(type(s1),'起始位置',s1,'结束位置')
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'str'> 起始位置 hello world 结束位置
s = 'hello world' s1 = s.center(26,'#') # 字符串在26个"#"号中间 print(type(s1),s1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'str'> #######hello world########
10、endswith()
描述:判断是否以指定的子串结尾
参数:suffix 子串
start 开始索引
end 结束索引
返回值: 返回布尔值
s = 'hello world' s1 = s.endswith('rld') print(type(s1),s1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'bool'> True
s = 'hello world' s1 = s.endswith('or',1,9) # 表示从索引位置1至8(顾首不顾尾)查找是否以字符'or'结尾 print(type(s1),s1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'bool'> True
12、find()
描述:检测字符串中是否包含指定的子串
参数:sub 要查找的子串
start 查找的开始位置
end 查找的结束位置
返回值:若包含子串则返回开始的索引值,否则返回-1
s = 'hello world' s1 = s.find('l',5,10) # 查找索引5至9位置中的字符“l”的位置 print(type(s1),s1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'int'> 9
s = 'hello world' s1 = s.find('x') # 查找一个字符串中不存在的子串 print(type(s1),s1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'int'> -1
13、format()
描述:字符串的格式化输出。
种类:分别是%和{} 两种占位符格式控制符
数据格式类型:
(1)%% 百分号标记
(2) %c 字符及其ASCII码
(3) %s 字符串 重点
(4)%d 有符号整数(十进制) 重点
(5)%u 无符号整数(十进制)
(6)%o 无符号整数(八进制)
(7)%x 无符号整数(十六进制)
(8)%X 无符号整数(十六进制大写字符)
(9)%e 浮点数(科学计数法)
(10)%E 浮点数(科学计数法,用E代替e)
(11)%f 浮点数(用小数点符号) 重点
(12)%g 浮点数(根据值的大小采用%e或%f)
(13)%G 浮点数(类似于%g)
(14)%p 指针(用十六进制打印值的内存地址)
(15)%n 存储输出字符的数量放进参数列表的下一个变量中
参数:*args,**kwargs表示接收所有传参。
返回值:返回一个新的字符串。
print('my name is %s my age is %s my height is %s'%('alex',45,178))
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
my name is alex my age is 45 my height is 178
print('my name is {name} my age is {age} my height is {height}'.format(name='alex',age=35,height=178))
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
my name is alex my age is 35 my height is 178
16、isalpha()
描述:判断一个字符串是否全是字母
参数:无
返回值:返回一个布尔值
s = '88888hello world88888' s1 = s.isalpha() print(type(s1),s1) s2 = 'helloworld' s3 = s2.isalpha() print(type(s3),s3)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'bool'> False <class 'bool'> True
18、isdigit()
描述:判断一个字符串中是否由数字组成
参数:无
返回值:返回一个布尔值(如果由数字组成则返回True,否则返回False)
s = '123456789' s1 = s.isdigit() print(type(s1),s1)
<class 'bool'> True
23、istitle()
描述:判断字符串中的每个单词首字母是否为大写
参数:无
返回值:返回一个布尔值(字符串中的每个单词首字母为大写则返回True,否则返回False)
s = '888888What Is Your Name?' s1 = s.istitle() print(type(s1),s1) s2 = '888888what is your name?' s3 = s2.istitle() print(type(s3),s3)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<class 'bool'> True <class 'bool'> False
25、join()
描述:将序列中的元素以指定的字符连接,生成一个新的字符串。
参数:iterable 指定的字符
返回值:返回通过指定字符连接序列中元素后生成的新字符串
s1 = '-' s2 = '' seq = ('h','e','l','l','o') print(s1.join(seq)) print(s2.join(seq))
View Codeh-e-l-l-o hello
27、lower()
描述:将字符串中的大写字母替换成小写
参数:无
返回值:返回一个小写的字符串
s = 'HELLO WORLD' s1 = s.lower() print(type(s1),s1)
View Code<class 'str'> hello world31、rfind()
描述:返回字符串最后一次出现的位置,如果没有匹配项则返回-1
参数:sub 查找的字符串
start 开始查找的位置(默认为0)
end 结束查找位置(默认为字符串的长度)
返回值:返回字符串最后一次出现的位置,如果没有匹配则返回-1
s = 'Alex is a big SB' s1 = 'is' print(type(s.rfind(s1)),s.rfind(s1))
View Code<class 'int'> 532、rindex()
描述:返回子串在字符串中最后出现的位置,如果没有匹配的字符串会报异常
参数:sub 查找的字符串
start 开始位置
end 结束位置
返回值:返回子串在字符串中最后出现的位置,如果没有匹配的字符串会报异常
s = 'Alex is a big SB' s1 = s.rindex('i') print(type(s1),s1)
View Code<class 'int'> 1142、upper()
描述:将字符串中的小写字母转为大写字母
参数:无
返回值:返回小写字母转为大写字母后的字符串