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实现从ftp服务器下载文件的方法
Apr 30 Python
python读取word文档的方法
May 09 Python
Python入门_浅谈逻辑判断与运算符
May 16 Python
Django中Model的使用方法教程
Mar 07 Python
详解Django之admin组件的使用和源码剖析
May 04 Python
用python统计代码行的示例(包括空行和注释)
Jul 24 Python
Python hashlib模块加密过程解析
Nov 05 Python
Python进程间通信multiprocess代码实例
Mar 18 Python
解决IDEA 的 plugins 搜不到任何的插件问题
May 04 Python
Python捕获异常堆栈信息的几种方法(小结)
May 18 Python
使用OpenCV校准鱼眼镜头的方法
Nov 26 Python
python基础之错误和异常处理
Oct 24 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
2020年4月放送!《Princess Connect Re:Dive》制作组 & 角色声优公开!
2020/03/06 日漫
PHP编实现程动态图像的创建代码
2008/09/28 PHP
PHP设置图片文件上传大小的具体实现方法
2013/10/11 PHP
jquery 得到当前页面高度和宽度的两个函数
2010/02/21 Javascript
利用try-catch判断变量是已声明未声明还是未赋值
2014/03/12 Javascript
ext中store.load跟store.reload的区别示例介绍
2014/06/17 Javascript
动态加载js的方法汇总
2015/02/13 Javascript
JS给Textarea文本框添加行号的方法
2015/08/20 Javascript
购物车前端开发(jQuery和bootstrap3)
2016/08/27 Javascript
jQuery编写设置和获取颜色的插件
2017/01/09 Javascript
JS设置CSS样式的方式汇总
2017/01/21 Javascript
用jquery的attr方法实现图片切换效果
2017/02/05 Javascript
Javascript之深入浅出prototype
2017/02/06 Javascript
微信小程序 实例开发总结
2017/04/26 Javascript
IScroll5实现下拉刷新上拉加载的功能实例
2017/08/11 Javascript
Element输入框带历史查询记录的实现示例
2019/01/15 Javascript
Vue中使用create-keyframe-animation与动画钩子完成复杂动画
2019/04/09 Javascript
jquery操作select常见方法大全【7种情况】
2019/05/28 jQuery
Python GAE、Django导出Excel的方法
2008/11/24 Python
在Windows服务器下用Apache和mod_wsgi配置Python应用的教程
2015/05/06 Python
Python3安装Pymongo详细步骤
2017/05/26 Python
python pip安装包出现:Failed building wheel for xxx错误的解决
2019/12/25 Python
python开发前景如何
2020/06/11 Python
Python实现SMTP邮件发送
2020/06/16 Python
详解HTML5布局和HTML5标签
2020/10/26 HTML / CSS
自我鉴定范文300字
2013/10/01 职场文书
大学生毕业自我鉴定
2013/11/06 职场文书
运动会广播稿150字
2014/02/19 职场文书
大学新闻系应届生求职信
2014/06/02 职场文书
负责人任命书范本
2014/06/04 职场文书
学校班子个人对照检查材料思想汇报
2014/09/27 职场文书
小学安全工作总结2015
2015/05/18 职场文书
python用海龟绘图写贪吃蛇游戏
2021/06/18 Python
Python制作动态字符画的源码
2021/08/04 Python
Spring中的使用@Async异步调用方法
2021/11/01 Java/Android
Mysql使用全文索引(FullText index)的实例代码
2022/04/03 MySQL