圆月山庄资源网 Design By www.vgjia.com

今天在下脚本的时候遇到一个问题,比如有这样的一个字符串 t = "book123456",想把尾部的数字全部去掉,只留下“book”,自己用正则试了下,是实现了,但速度不是很快,于是问了一下同事,他给的解决的方法确实很简洁,也让自己长了知识点,如下:

import string

t.rstrip(string.digits)

这样就全部将数字移除了,顺便将string这个模块看了下文档,也有一定的收获。

> import string
> string.digits
'0123456789'
> string.hexdigits
'0123456789abcdefABCDEF'
> string.octdigits
'01234567'
> string.letters
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
> string.lowercase
'abcdefghijklmnopqrstuvwxyz'
> string.uppercase
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
> string.printable
'0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>"#$%&\'()*+,-./:;<=>"htmlcode">
> string.atof("1.23")
1.23
> string.atof("1")
1.0

转换的时候还可以制定进制的转化



> string.atoi("20")
20
> string.atoi("20",base=10)
20
> string.atoi("20",base=16)
32
> string.atoi("20",base=8)
16
> string.atoi("20",base=2)
Traceback (most recent call last):
 File "", line 1, in <module>
 File "/usr/lib64/python2.6/string.py", line 403, in atoi
  return _int(s, base)
ValueError: invalid literal for int() with base 2: '20'
> string.atoi("101",base=2)
5
> string.atoi("101",base=6)
37

capwords(s, sep = None)以sep作为分隔符,分割字符串是s,然后将每个字符串的首字母大写

> string.capwords("this is a dog")
'This Is A Dog'
> string.capwords("this is a dog",sep=" ")
'This Is A Dog'
> string.capwords("this is a dog",sep="s")
'This is a dog'
> string.capwords("this is a dog",sep="o")
'This is a doG'
>

maketrans(s, r)创建一个s到r的转换列表,然后可以使用translate()方法来实现

> replist=string.maketrans("123","abc")
> replist1=string.maketrans("456","xyz")
> s="123456789"
> s.translate(replist)
'abc456789'
> s.translate(replist1)
'123xyz789'

以上这篇python 移除字符串尾部的数字方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

标签:
python,移除,字符串,数字

圆月山庄资源网 Design By www.vgjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
圆月山庄资源网 Design By www.vgjia.com

P70系列延期,华为新旗舰将在下月发布

3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。

而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?

根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。