设为首页 加入收藏

TOP

Python序列之字符串
2017-07-29 10:24:04 】 浏览:3057
Tags:Python 序列 字符串

注:本文仅介绍字符串的一些常用的方法


因为字符串属于不可变序列,所以方法中对字符串的修改,都是靠返回一个新字符串来实现的,并没有对老字符串产生影响


1、寻找文本:在字符串中,从左开始寻找自己想要的文本


str1.find(string,[startindex],[endindex])      #可选参数为开始和结束的索引


查找成功返回所处索引,失败返回-1


同类方法:


str1.index()


查找成功返回索引,失败抛出错误


 


2、倒找文本:在字符串中,从右开始寻找自己想要的文本


str1.rfind()  #参数同上


查找成功返回所处索引,失败返回-1


同类方法:


str1.rindex()


查找成功返回索引,失败抛出错误


 


3、取部分文本


取文本左边


提供长度:str1[:ls]


提供字符串:str1[:str1.index(string)]


取文本右边


提供长度:str1[len(str1)-ls:]


提供字符串:str1[str1.rindex(string)+1:]


取文本中间


提供起始索引:str1[startindex:endindex]


提供起始字符串:str1[str1.index(starstring)+1:str1.rindex(endstring)]


 


4、连接成字符串:把列表连接成字符串


string.join(list) 


str1 = '+'  #此为连接符


list1 = ['1','2','3']  #注意,该列表的成员必须是string


打印结果:1+2+3


 


5、分割字符串到列表


string.split([fgstring],[fgcount])


默认无参是用空格进行分割


第二个参数是可选的分割次数


注:分割1次是生成2个成员,2次是3个


返回结果是列表


 


注:split方法与join互为逆运算


 


6、查找字符串并替换


str1.replace(x,y,[z])


查找到x,全部替换成y


参数z为可选参数,替换次数,为空的情况下默认全部替换


 


想同时替换多个值,有一个新的方法


str1.translate(table)  #参数是一个替换表


下面介绍替换表生成的方法


from string import maketrans


table1 = maketrans('a','a')  #这是一个包含256个字符的原始替换表


str1.translate(table1) #这样就可以替换了


 


注:如果需要同时替换多个,可以在生成替换表的时候修改


table1 = maketrans('ac','bk')  #a 替换 b ,c 替换成  k


 


7、空格处理


str1.strip([s])   #删首尾空,可以使用指定参数,删除首尾指定参数


str1.lstrip([s])  #删左首空,同上


str1.rstrip([s])  #删右首空,同上


 


注:如果需要删除中间的空格,则只能使用其他的方法


a、替换方法


str1.replace(' ','')  #替换中间所有空格


b、分割方法


''.join(str1.split())


c、正则方法


通过sub匹配替换


 


8、字母转换


常用字母转换


str1.lower()  转换成小写字母


str1.upper()  转换成大写字母


str1.swapcase()  大小写互换


str1.title()  转换为首字母大写,其他字母小写


对应的字母判断方法


str1.islower()  #判断小写


str1.isupper()  #判断大写


str1.istitle()  #判断单词首字母大写


 


判断字符串的开头和结尾


str1.startwith(string)  #判断是否以当前string开头


str1.endwith(string)  #判断是否以当前string结尾


返回值:逻辑型


 


9、字符串格式化


单个参数格式化


print '%s是一个好人'%'张三'


两个参数


print '%s是一个%s'%('李四','坏人')


注:传递多个参数时需要使用到元组,且必须加括号


 


常用格式化字符串


%s 格式化字符串,可以提供字符串和int


%d 格式化字符串,可以提供数值类型,非int会被强转成int


%x 格式化字符串,可以提供数值类型,非int会被转成int,结果强转成16进制


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Python读写JSON文件 下一篇从读写文件看Python的编码处理

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目