Python translator使用实例


Posted in Python onSeptember 06, 2008

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 : ###-####
Python 相关文章推荐
Python算术运算符实例详解
May 31 Python
python更改已存在excel文件的方法
May 03 Python
详解Django之admin组件的使用和源码剖析
May 04 Python
python切片及sys.argv[]用法详解
May 25 Python
Python正则匹配判断手机号是否合法的方法
Dec 09 Python
Python中Numpy ndarray的使用详解
May 24 Python
Python字符串大小写转换拼接删除空白
Sep 19 Python
Django框架model模型对象验证实现方法分析
Oct 02 Python
如何将 awk 脚本移植到 Python
Dec 09 Python
python判断链表是否有环的实例代码
Jan 31 Python
Python面向对象特殊属性及方法解析
Sep 16 Python
python 镜像环境搭建总结
Sep 23 Python
Python 字符串中的字符倒转
Sep 06 #Python
Python  连接字符串(join %)
Sep 06 #Python
Python strip lstrip rstrip使用方法
Sep 06 #Python
Python ljust rjust center输出
Sep 06 #Python
Python isinstance判断对象类型
Sep 06 #Python
Python字符转换
Sep 06 #Python
Python字符遍历的艺术
Sep 06 #Python
You might like
php数组函数序列之asort() - 对数组的元素值进行升序排序,保持索引关系
2011/11/02 PHP
解决PHP超大文件下载,断点续传下载的方法详解
2013/06/06 PHP
php函数传值的引用传递注意事项分析
2016/06/25 PHP
数据结构之利用PHP实现二分搜索树
2020/10/25 PHP
jQuery get和post 方法传值注意事项
2009/11/03 Javascript
extJs 常用到的增,删,改,查操作代码
2009/12/28 Javascript
jquery 读取页面load get post ajax 四种方式代码写法
2011/04/02 Javascript
基于jquery的滚动鼠标放大缩小图片效果
2011/10/27 Javascript
jQuery实现类似滑动门切换效果的层切换
2013/09/23 Javascript
JQuery页面地址处理插件jqURL详解
2015/05/03 Javascript
基于JavaScript实现瀑布流效果(循环渐近)
2016/01/27 Javascript
基于jQuery实现select下拉选择可输入附源码下载
2016/02/03 Javascript
js HTML5 Ajax实现文件上传进度条功能
2016/02/13 Javascript
微信小程序 UI与容器组件总结
2017/02/21 Javascript
让div运动起来 js实现缓动效果
2017/07/06 Javascript
react-router browserHistory刷新页面404问题解决方法
2017/12/29 Javascript
json对象及数组键值的深度大小写转换问题详解
2018/03/30 Javascript
使用webpack搭建vue项目及注意事项
2019/06/10 Javascript
ES6顶层对象、global对象实例分析
2019/06/14 Javascript
[48:21]林俊杰圣堂刺客超神杀戮秀
2014/10/29 DOTA
[03:10]超级美酒第四天 fy拉比克秀 大合集
2018/06/05 DOTA
Python 执行字符串表达式函数(eval exec execfile)
2014/08/11 Python
python中ImageTk.PhotoImage()不显示图片却不报错问题解决
2018/12/06 Python
Python使用统计函数绘制简单图形实例代码
2019/05/15 Python
Python3.7 读取 mp3 音频文件生成波形图效果
2019/11/05 Python
详解利用canvas实现环形进度条的方法
2019/06/12 HTML / CSS
利用HTML5画出一个坦克的形状具体实现代码
2013/06/20 HTML / CSS
阿里健康大药房:阿里自营网上药店
2017/08/01 全球购物
英国排名第一的礼品体验公司:Red Letter Days
2018/08/16 全球购物
英国门销售网站:Green Tree Doors
2020/01/07 全球购物
最新奶茶店创业计划书范文
2014/02/08 职场文书
三项教育活动实施方案
2014/03/30 职场文书
小学生期末评语大全
2014/04/21 职场文书
2016高考冲刺决心书
2015/09/23 职场文书
SQL注入详解及防范方法
2021/12/06 MySQL
DIY胆机必读:各国电子管评价
2022/04/06 无线电