设为首页 收藏本站
查看: 926|回复: 0

[经验分享] [转]Python字符串常用大全

[复制链接]

尚未签到

发表于 2017-5-5 06:50:45 | 显示全部楼层 |阅读模式
  Refer to: http://blog.csdn.net/daemonpei/article/details/6325762
字符串相关操作:
+ :string1+string2 #联接字符串,将后一个串链接到前一个串的后面
* :string*n #创建一个新字符串重复n次原来的串
[] :string[n] #从字符串中获取对应位置的一个字符
[:] :string[n:m] #截取字符串,如果为:m从头到m如果为n:从n到尾
in :char in string #判断一个字符是否在串中,如果在返回为真(True)
not in :char not in string #判断一个字符是否不在串中,如果在返回为真(True)
r/R : r/Rstring #禁止转义字符的实际意义,整个字符为原始意义
字符串中字符大小写的变换:
* S.lower()  #小写 
* S.upper()   #大写 
* S.swapcase()   #大小写互换 
* S.capitalize()   #首字母大写 
* String.capwords(S) #这是模块中的方法。它把S用split()函数分开,然后用capitalize()把首字母变成大写,最后用join()合并到一起 
* S.title()    #只有首字母大写,其余为小写,模块中没有这个方法

字符串在输出时的对齐:
* S.ljust(width,[fillchar]) #输出width个字符,S左对齐,不足部分用fillchar填充,默认的为空格。 
* S.rjust(width,[fillchar])  #右对齐 
* S.center(width, [fillchar]) #中间对齐 
* S.zfill(width)   #把S变成width长,并在右对齐,不足部分用0补足

字符串中的搜索和替换:
* S.find(substr, [start, [end]]) #返回S中出现substr的第一个字母的标号,如果S中没有substr则返回-1。start和end作用就相当于在S[start:end]中搜索 
* S.index(substr, [start, [end]]) #与find()相同,只是在S中没有substr时,会返回一个运行时错误 
* S.rfind(substr, [start, [end]]) #返回S中最后出现的substr的第一个字母的标号,如果S中没有substr则返回-1,也就是说从右边算起的第一次出现的substr的首字母标号 
* S.rindex(substr, [start, [end]]) 
* S.count(substr, [start, [end]]) #计算substr在S中出现的次数 
* S.replace(oldstr, newstr, [count]) #把S中的oldstar替换为newstr,count为替换次数。这是替换的通用形式,还有一些函数进行特殊字符的替换 
* S.strip([chars]) #把S中前后chars中有的字符全部去掉,可以理解为把S前后chars替换为None 
* S.lstrip([chars]) 
* S.rstrip([chars]) 
* S.expandtabs([tabsize]) #把S中的tab字符替换没空格,每个tab替换为tabsize个空格,默认是8个

字符串的分割和组合:
* S.split([sep, [maxsplit]]) #以sep为分隔符,把S分成一个list。maxsplit表示分割的次数。默认的分割符为空白字符 
* S.rsplit([sep, [maxsplit]]) 
* S.splitlines([keepends]) #把S按照行分割符分为一个list,keepends是一个bool值,如果为真每行后而会保留行分割符。 
* S.join(seq) #把seq代表的序列──字符串序列,用S连接起来

字符串的mapping,这一功能包含两个函数:
* String.maketrans(from, to) #返回一个256个字符组成的翻译表,其中from中的字符被一一对应地转换成to,所以from和to必须是等长的。 
* S.translate(table[,deletechars]) #使用上面的函数产后的翻译表,把S进行翻译,并把deletechars中有的字符删掉。需要注意的是,如果S为unicode字符串,那么就不支持 deletechars参数,可以使用把某个字符翻译为None的方式实现相同的功能。此外还可以使用codecs模块的功能来创建更加功能强大的翻译表。

字符串还有一对编码和解码的函数:
* S.encode([encoding,[errors]]) #其中encoding可以有多种值,比如gb2312 gbk gb18030 bz2 zlib big5 bzse64等都支持。errors默认值为"strict",意思是UnicodeError。可能的值还有'ignore', 'replace', 'xmlcharrefreplace', 'backslashreplace' 和所有的通过codecs.register_error注册的值。这一部分内容涉及codecs模块,不是特明白 
* S.decode([encoding,[errors]])

字符串的测试函数,函数返回的都是bool值:
* S.startwith(prefix[,start[,end]]) #是否以prefix开头 
* S.endwith(suffix[,start[,end]]) #以suffix结尾 
* S.isalnum() #是否全是字母和数字,并至少有一个字符 
* S.isalpha() #是否全是字母,并至少有一个字符 
* S.isdigit() #是否全是数字,并至少有一个字符 
* S.isspace() #是否全是空白字符,并至少有一个字符 
* S.islower() #S中的字母是否全是小写 
* S.isupper() #S中的字母是否便是大写 
* S.istitle() #S是否是首字母大写的

字符串类型转换函数,这几个函数在string模块中:
* string.atoi(s[,base]) #base默认为10,如果为0,那么s就可以是012或0x23这种形式的字符串,如果是16那么s就只能是0x23或0X12这种形式的字符串 
* string.atol(s[,base]) #转成long 
* string.atof(s[,base]) #转成float

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-373126-1-1.html 上篇帖子: 计算仿射变换六参数(Python) 下篇帖子: python unittest 只跑某个(某些)测试
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表