今天在下脚本的时候遇到一个问题,比如有这样的一个字符串 t = "book123456",想把尾部的数字全部去掉,只留下“book”,自己用正则试了下,是实现了,但速度不是很快,于是问了一下同事,他给的解决的方法确实很简洁,也让自己长了知识点,如下:
1
2
3
|
import string
t.rstrip(string.digits)
|
这样就全部将数字移除了,顺便将string这个模块看了下文档,也有一定的收获。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
>>> import string
>>> string.digits
'0123456789'
>>> string.hexdigits
'0123456789abcdefABCDEF'
>>> string.octdigits
'01234567'
>>> string.letters
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
>>> string.lowercase
'abcdefghijklmnopqrstuvwxyz'
>>> string.uppercase
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
>>> string.printable
'0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~ \t\n\r\x0b\x0c'
>>> string.punctuation
'!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
>>> string.whitespace
'\t\n\x0b\x0c\r '
>>>
|
同时string可以将字符串和int,float相互转化:
1
2
3
4
|
>>> string.atof( "1.23" )
1.23
>>> string.atof( "1" )
1.0
|
转换的时候还可以制定进制的转化
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
>>> 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,然后将每个字符串的首字母大写
1
2
3
4
5
6
7
8
9
|
>>> 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()方法来实现
1
2
3
4
5
6
7
|
>>> replist = string.maketrans( "123" , "abc" )
>>> replist1 = string.maketrans( "456" , "xyz" )
>>> s = "123456789"
>>> s.translate(replist)
'abc456789'
>>> s.translate(replist1)
'123xyz789'
|
以上这篇python 移除字符串尾部的数字方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/lulongfei172006/article/details/51744505