Python translator使用实例
1.string.maketrans设置字符串转换规则表(translation table)
2.translate函数进行字符串的替换和删除,第一个参数是字符串转换规则表(translation table),第二个参数是要删除的字符串。比如,要将字符串s中的所有e替换为a,同时要删除所有的o
输出结果:
hall pythn
3.假如我们这样使用
allchars表示所有的字符串,而k表示从所有的字符串中去除掉字符a,就是说所有的字符,除了a,因此,我们再调用如下方法时:
字面意思是,输出“字符串s中除去任何不是字符a的字符",即,只输出字符a,因此输出结果为:
a
4.现在,已经不难理解下面这个函数了
return translate调用:
输出结果:
2247992
Chris Perkins : ###-####
代码如下:
allchars = string.maketrans('', '')#所有的字符串,即不替换字符串 aTob = string.maketrans('a','b')#将字符a转换为字符b
2.translate函数进行字符串的替换和删除,第一个参数是字符串转换规则表(translation table),第二个参数是要删除的字符串。比如,要将字符串s中的所有e替换为a,同时要删除所有的o
代码如下:
aTob = string.maketrans('e','a') s = 'hello python' print s.translate(aTob, 'o')
输出结果:
hall pythn
3.假如我们这样使用
代码如下:
allchars = string.maketrans('', '') k = allchars.translate(allchars, 'a')
allchars表示所有的字符串,而k表示从所有的字符串中去除掉字符a,就是说所有的字符,除了a,因此,我们再调用如下方法时:
代码如下:
s = 'abc' print s.translate(allchars, k)
字面意思是,输出“字符串s中除去任何不是字符a的字符",即,只输出字符a,因此输出结果为:
a
4.现在,已经不难理解下面这个函数了
代码如下:
import string def translator(frm='', to='', delete='', keep=None): if len(to) == 1: to = to * len(frm) trans = string.maketrans(frm, to) if keep is not None: allchars = string.maketrans('', '') delete = allchars.translate(allchars, keep.translate(allchars, delete)) def translate(s): return s.translate(trans, delete)
return translate调用:
代码如下:
digits_only = translator(keep=string.digits) print digits_only('Chris Perkins : 224-7992') digits_to_hash = translator(frm=string.digits, to='#') print digits_to_hash('Chris Perkins : 224-7992')
输出结果:
2247992
Chris Perkins : ###-####
相关推荐
文山羊 2020-10-20
xiaoseyihe 2020-08-11
pythonxuexi 2020-07-30
leoaran 2020-07-21
littie 2020-07-19
yjsflxiang 2020-07-04
liusarazhang 2020-06-14
chinademon 2020-06-11
shengnanonly 2020-06-03
jessieHJ 2020-05-03
kikaylee 2020-04-26
amberom 2020-08-03
zlsdmx 2020-07-05
银角大王 2020-07-05
Tristahong 2020-10-14
stulen 2020-08-15
fengzhiwu 2020-08-01
kkpiece 2020-07-08