最近在看python标准库这本书,第一感觉非常厚,第二感觉,里面有很多原来不知道的东西,现在记下来跟大家分享一下。
string类是python中最常用的文本处理工具,在python的标准库中,有大量的工具,可以帮助我们完成高级文本处理。 capwords()是将一个字符串中的所有单词的首字母大写。
importstring
s= 'The quick brown fox jumped over the lazy dog.'
printsprint string.capwords(s)
运行结果如下:
The quick brown fox jumped over the lazy dog.
The Quick Brown Fox Jumped Over The Lazy Dog.
相当于先调用split(),这会将结果列表中的各个单词的首字母大写,然后再调用join()合并结果。
maketrans()函数将创建转换表,可以用来结合translate()方法将一组字符修改成另一组字符,这种方法比反复调用replace()更为高效
importstring
leet= string.maketrans('abegiloprstz', '463611092572')
s= 'The quick brown fox jumped over the lazy dog.'
printsprint s.translate(leet)
运行结果如下:
The quick brown fox jumped over the lazy dog.
Th3 qu1ck 620wn f0x jum93d 0v32 7h3 142y d06.
字符串模版是替代内置拼接(interpolation)的一种候选方法。使用string.Template拼接时,可以在变量名前面加上前缀$来标识变量,或者如果需要与两侧的文本相区分,还可以使用大括号将变量括起。
importstring
values= {'var' : 'foo'}
t= string.Template("""Variable : $var
Escape : $$
Variable in text : ${var}iable""")print 'TEMPLATE:', t.substitute(values)
s= """Variable : %(var)s
Escape : %%
Variable in text : %(var)siable"""
print 'INTERPOLATION:', s % values
运行结果
TEMPLATE:
Variable : foo
Escape : $
Variable in text : fooiable
INTERPOLATION:
Variable : foo
Escape : %
Variable in text : fooiable