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使用xmlrpc实例讲解
Dec 17 Python
将Emacs打造成强大的Python代码编辑工具
Nov 20 Python
简单总结Python中序列与字典的相同和不同之处
Jan 19 Python
Python使用剪切板的方法
Jun 06 Python
简单易懂的python环境安装教程
Jul 13 Python
Python数据结构与算法之图的基本实现及迭代器实例详解
Dec 12 Python
python matplotlib 注释文本箭头简单代码示例
Jan 08 Python
Ubuntu下使用Python实现游戏制作中的切分图片功能
Mar 30 Python
python基于FTP实现文件传输相关功能代码实例
Sep 28 Python
keras 回调函数Callbacks 断点ModelCheckpoint教程
Jun 18 Python
使用python对excel表格处理的一些小功能
Jan 25 Python
python调用ffmpeg命令行工具便捷操作视频示例实现过程
Nov 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
php 冒泡排序 交换排序法
2011/05/10 PHP
整理的一些实用WordPress后台MySQL操作命令
2013/01/07 PHP
php递归json类实例
2014/12/02 PHP
PHP异常处理浅析
2015/05/12 PHP
Yii实现文章列表置顶功能示例
2016/10/18 PHP
js文件缓存之版本管理详解
2013/07/05 Javascript
MyEclipse取消验证Js的两种方法
2013/11/14 Javascript
javascript 通用loading动画效果实例代码
2014/01/14 Javascript
一个小例子解释如何来阻止Jquery事件冒泡
2014/07/17 Javascript
js Calender控件使用详解
2015/01/05 Javascript
jQuery实现checkbox全选的方法
2015/06/10 Javascript
JQuery中Ajax的操作完整例子
2017/03/07 Javascript
JS返回顶部实例代码
2020/08/09 Javascript
VSCode使用之Vue工程配置eslint
2019/04/30 Javascript
详解VSCode配置启动Vue项目
2019/05/14 Javascript
小程序实现搜索框功能
2020/03/26 Javascript
微信小程序 调用远程接口 给全局数组赋值代码实例
2019/08/13 Javascript
js面试题之异步问题的深入理解
2020/09/20 Javascript
three.js显示中文字体与tween应用详析
2021/01/04 Javascript
[01:34]完美“圣”典宣传片震撼发布,12.17与你不见不散
2016/12/16 DOTA
[01:02:09]Liquid vs TNC 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.21
2020/07/19 DOTA
Pytorch提取模型特征向量保存至csv的例子
2020/01/03 Python
PyTorch中的Variable变量详解
2020/01/07 Python
如何利用Python写个坦克大战
2020/11/18 Python
草莓网美国官网:Strawberrynet USA
2016/12/11 全球购物
欧舒丹比利时官网:L’OCCITANE比利时
2017/04/25 全球购物
美国室内和室外装饰花盆购物网站:ePlanters
2019/03/22 全球购物
什么是事务?为什么需要事务?
2012/01/09 面试题
购房意向书范本
2014/04/01 职场文书
父母寄语大全
2014/04/12 职场文书
阳光体育活动总结
2014/04/30 职场文书
经理任命书模板
2014/06/06 职场文书
汽车服务工程专业自荐信
2014/09/02 职场文书
公司员工培训管理制度
2015/08/04 职场文书
新手必备之MySQL msi版本下载安装图文详细教程
2021/05/21 MySQL
zabbix配置nginx监控的实现
2022/05/25 Servers