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关闭windows进程的方法
Apr 18 Python
python3+PyQt5使用数据库表视图
Apr 24 Python
python list转矩阵的实例讲解
Aug 04 Python
浅谈解除装饰器作用(python3新增)
Oct 15 Python
Python使用crontab模块设置和清除定时任务操作详解
Apr 09 Python
python交易记录整合交易类详解
Jul 03 Python
详解Python文件修改的两种方式
Aug 22 Python
python3实现绘制二维点图
Dec 04 Python
Python龙贝格法求积分实例
Feb 29 Python
python如何调用字典的key
May 25 Python
接口自动化多层嵌套json数据处理代码实例
Nov 20 Python
python实现剪贴板的操作
Jul 01 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
Content-type 的说明
2006/10/09 PHP
zend framework配置操作数据库实例分析
2012/12/06 PHP
浅析ThinkPHP的模板输出功能
2014/07/01 PHP
javascript 选择文件夹对话框(web)
2009/07/07 Javascript
Jquery 扩展方法
2010/05/06 Javascript
URL地址中的#符号使用说明
2011/02/12 Javascript
JavaScript获取页面上某个元素的代码
2011/03/13 Javascript
IE不支持getElementsByClassName最终完美解决方案
2012/12/17 Javascript
jquery中.add()的使用分析
2013/04/26 Javascript
原生js实现复制对象、扩展对象 类似jquery中的extend()方法
2014/08/30 Javascript
JavaScript 七大技巧(一)
2015/12/13 Javascript
基于JavaScript如何实现ajax调用后台定义的方法
2015/12/29 Javascript
前端jquery部分很精彩
2016/05/03 Javascript
用瀑布流的方式在网页上插入图片的简单实现方法
2016/09/23 Javascript
元素全屏的设置与监听实例
2017/11/28 Javascript
解决layer.prompt无效的问题
2019/09/24 Javascript
Postman参数化实现过程及原理解析
2020/08/13 Javascript
python 输出一个两行字符的变量
2009/02/05 Python
python命令行参数sys.argv使用示例
2014/01/28 Python
Python HTMLParser模块解析html获取url实例
2015/04/08 Python
python使用in操作符时元组和数组的区别分析
2015/05/19 Python
Python urls.py的三种配置写法实例详解
2017/04/28 Python
pandas 两列时间相减换算为秒的方法
2018/04/20 Python
对python中Matplotlib的坐标轴的坐标区间的设定实例讲解
2018/05/25 Python
python 梯度法求解函数极值的实例
2019/07/10 Python
Python3.x+pyqtgraph实现数据可视化教程
2020/03/14 Python
python实现飞船游戏的纵向移动
2020/04/24 Python
CSS3 Calc实现滚动条出现页面不跳动问题
2017/09/14 HTML / CSS
lookfantastic荷兰:在线购买奢华护肤、护发和化妆品
2018/11/27 全球购物
应届生的求职推荐信范文
2013/11/30 职场文书
教师节学生演讲稿
2014/09/03 职场文书
工作时间擅自离岗检讨书
2014/10/24 职场文书
格列佛游记读书笔记
2015/06/30 职场文书
护士自荐信范文(2016推荐篇)
2016/01/28 职场文书
Nginx 负载均衡是什么以及该如何配置
2021/03/31 Servers
MySQL CHAR和VARCHAR该如何选择
2021/05/31 MySQL