学习python的string模块(一)

发布时间:2020-02-17编辑:脚本学堂
string模块中的很多函数与python的字符串属性函数类似,这里不再逐一介绍。

string模块中的很多函数与python的字符串属性函数类似,这里不再逐一介绍。

string模块中可以使用的全局变量
 

复制代码 代码如下:
>>> import string
>>> string.digits
'0123456789'
>>> string.hexdigits
'0123456789abcdefABCDEF'
>>> string.octdigits
'01234567'
>>> string.letters
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
>>> string.lowercase
'abcdefghijklmnopqrstuvwxyz'
>>> string.uppercase
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
>>> string.printable
'0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&'()*+,-./:;<=>?@[]^_`{|}~ tnrx0bx0c'
>>> string.punctuation
'!"#$%&'()*+,-./:;<=>?@[]^_`{|}~'
>>> string.whitespace
'tnx0bx0cr '
>>>

string.atof(s)将字符串转为浮点型数字
 

复制代码 代码如下:
>>> string.atof("1.23")
1.23
>>> string.atof("1")
1.0

string.atoi(s,[base=num])将字符串转为整型数字,base 指定进制
 

复制代码 代码如下:
>>> 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 "<stdin>", 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

string.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'
>>>

string.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'