" />
                  
定义键盘快捷键 dedecms powershell codeigniter symfony bitmap datagrid xampp jwt chartjs 后台模板下载 css获取最后一个元素 cos图像和sin图像 bootstrap颜色 matlab自然对数 SketchUp mysql教程 java数据类型 java替换字符 java平台 java集合遍历 java入门代码 java中float java泛型的使用 javac java调用接口 linux入门 python视频教程 心理学与生活下载 dll文件下载 华为线刷工具 一羽月土米水日古余打一成语 思源字体 qq飞车刷车 jpg格式转换器 保留两位小数的函数 ps怎么旋转图层 cad打散 js绑定事件的方法 edius调色
当前位置: 首页 > 学习教程  > python

Python translator使用实例

2021/2/8 19:58:37 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

1.string.maketrans设置字符串转换规则表(translation table)
复制代码 代码如下:

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 : ###-####

本文链接: http://www.dtmao.cc/news_show_2000388.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?