python中string的方法,python字符串常用的五种方法
String方法用于处理代码中的字符串,它几乎可以处理你遇到的所有字符串格式。下面这篇文章主要介绍python中关于string及其常用操作(方法、函数)的信息,有需要的朋友可以参考一下。
00-1010下标和切片常用方法查找替换拆分大小写格式化对齐格式化清除空白字符检查补充:16个常用函数汇总注意:对字符串的所有操作,原始数据(即原字符串)保持不变!(字符串是不可变的类型)
对原始字符串的操作将返回操作后的数据,并且可以使用变量来接受数据。
-
目录
Str[下标],从左到右0,从右到左-1
Str[ start: end: step size],有范围的开始但没有结束。
Str=0123456789 #定义一个字符串,从0到9,总共有10个元素。
Str[0] #取出下标为0的元素
0
Str[10] #尝试取出下标为10的元素
回溯(最近呼叫):
模块中文件“pyshell#6”的第1行
字符串[10]
IndexError:字符串索引超出范围
#报告错误,下标越界,str[10]不存在
Str[9] #下标从左向右数,第一个下标为0,第N个元素下标为N-1。
9
Str[-1] #下标从右向左数,第一个下标是-N,最后一个下标是-1。
9
str[-10]
0
下标与切片
常见方法
.find(str),str有返回下标在字符串中的索引值,但没有返回-1。
.rfind(str),str存在于字符串中,搜索顺序从右到左,其余同find。
.index(str),有一个返回下标索引值,没有异常。
.rindex(str),有返回下标的索引值,搜索顺序是从右到左。其他同index。
.count(str[,start,end])查找该字符在指定字符串中出现的总次数。
Str=123aaabcdeeff #定义一个字符串来测试字符串方法的使用
Str.find(0) #尝试查询整数0是字符串中的下标。
回溯(最近呼叫):
模块中文件“pyshell#7”的第1行
str.find(0)
TypeError:必须是str,而不是int
#字符串操作,查询操作对象必须是字符串类型,因此该元素应标记为“”
Str.find(1) #查询指定字符串中第一个出现的字符1的下标
0 #返回的下标是0
Str.find(a) #查询指定字符串中第一个出现的字符A的下标
3 #返回的下标是3
Str.rfind(a) #反向查询(即从末尾向前查询
),字符a首次出现在字符串中的下标
5 #返回的下标为5
>>> str.index(0) #使用index查询时,字符不存在时,会报错
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
str.index(0)
ValueError: substring not found
>>> str.find(0) #使用find查询时,不存在返回-1
-1
>>> str.rindex(a) #使用rindex反向查询
5
>>> str.count(a) #使用count查询指定字符出现的总共次数
3
>>> str.count(f)
2
>>> str.count(a,0,3) #使用count时,可以指定范围,第一个数字指定起始位置,
0 #第二个数字指定 结束范围,查询范围包含起始位,不包含结束位
>>> str.count(a,1,5)
2
>>> str.find(abcde) #操作对象为字符串,传入参数也是一个字符串,并不一定是一个字符
5 #可以是字母数字以及中文
替换
.replace(str1,str2 [,n] ),将字符串中所有的str1替换为str2,n可指定最多替换的次数
>>> str=123aaabcdeeff>>> str.replace(a,s) #不指定替换次数,将会全部替换
123sssbcdeeff
>>> str.replace(a,s,1) #指定次数时,仅替换指定次数个,替换顺序为从前向后
123saabcdeeff
>>> str.replace(a,s,2)
123ssabcdeeff
分割
.split(str[,n]),以str为分隔符(分割后丢失),将字符串分割为多个字符串,n可指定最多的分割次数
.partition(str),已指定字符做为一个部分,分割两边,生成三部分的字符串
.splitlines(),按照行进行分割,返回一个包含各行作为元素的列表
>>> str=123123123 #定义一个字符串,用于测试>>> str.split(2) #使用split进行分割
[1, 31, 31, 3] #分割后指定的分割符消失,生成多个字符串的列表
>>> str.partition(2) #使用partition进行分割
(1, 2, 3123123) #仅进行一次分割,分割后制定的分割符单独成为一部分
>>> str=abc\nabc\nabc\nabc #定义一个包含行符的字符串
>>> print(str) #打印输出测试
abc
abc
abc
abc
>>> str.splitlines() #使用splitlines进行分割,生成一个列表,每一行数据为一个元素
[abc, abc, abc, abc]
大小写格式化
.capitalize(),将字符串第一个首字母大写(其它都小写)
.title(),将字符串中所有单词首字母大写(其它都小写)
.lower()转换所有大写字符为小写
.upper()转换所有小写字符为大写
>>> str="abcABC defDEF hijHIJ klMN" #定义一个包含大小写的字符串用于测试>>> str.capitalize() #将字符串首字母进行大写
Abcabc defdef hijhij klmn
>>> str.title() #将所有单词首字母进行大写
Abcabc Defdef Hijhij Klmn
>>> str.lower() #将字符串中所有字母小写
abcabc defdef hijhij klmn
>>> str.upper() #将字符串中所有字母大写
ABCABC DEFDEF HIJHIJ KLMN
>>>
对齐格式化
.ljust(width)返回一个原字符串左对齐,并默认使用空格补充至长度为width的字符串
.rjust(width)返回一个原字符串右对齐,并默认使用空格补充至...........
.center(width) 返回一个原字符居中,并使用空格补充至width长度的新字符串
#默认使用空格补充长度,显示不够明显,所以为了突出效果,指定使用了*补充str1= abcde
print(str1.ljust(20,*)) #左对齐,指定长度为20
str2= abcde
print(str2.rjust(20,*)) #右对齐,指定长度为20
str3= abcde
print(str3.center(20,*)) #居中对齐,指定长度为20
#执行结果
# abcde **********
# ********* abcde
# **** abcde *****
清除空白字符
.lstrip(),删除左侧的空白字符
.rstrip(),删除末尾的空白字符
.strip(),删除两端的空白字符
>>> str= abc>>> str.lstrip() #删除左侧空格
abc
>>> str.rstrip() #删除右侧空格
abc
>>> str.strip() #删除两侧空格
abc
>>>
检查
.startswith(str),检查字符串是否以指定字符开头,是则返回Turn,否则返回False
.endswith(str),检查字符串是否以指定字符结尾,是则返回Turn,否则为False
.isalpha(),检查字符串是否都是字母,是返回Turn,否则返回False
.isdigit(),检查字符串是否只包含数字,是返回Turn,否则返回False
.isalnum(),检查字符串是否都是字母或数字,是返回Turn,否则返回False
.isspace(),检查字符串是否只包含空格,是返回Turn,否则返回False
>>> str0=0123abcd>>> str1=12345
>>> str2=abcdef
>>> str3=
>>> str0.startswith(0) #检查是否包含指定字符串,是则返回True
True
>>> str0.startswith(6) #不包含则返回Flace
False
>>> str0.endswith(0) #检查是否以指定字符串结束,不是返回Flace
False
>>> str0.endswith(d) #是则返回True
True
>>> str1.isalnum() #检测指定字符串是否全是字母和数字组成
True
>>> str2.isalpha() #检测指定字符串是否全为字母
True
>>> str0.isdigit() #检测指定字符串是否全是数字
False
>>> str3.isspace() #检测指定字符串是否全为空格
True
>>>
补充:16个常用函数
方法 描述
总结
到此这篇关于python中字符串String及其常见操作指南(方法、函数)的文章就介绍到这了,更多相关python字符串String常见操作内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。