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中用split()方法分割字符串的使用介绍
May 20 Python
Python中用altzone()方法处理时区的教程
May 22 Python
python中星号变量的几种特殊用法
Sep 07 Python
win7+Python3.5下scrapy的安装方法
Jul 31 Python
python中单例常用的几种实现方法总结
Oct 13 Python
python3实现zabbix告警推送钉钉的示例
Feb 20 Python
10款最好的Python开发编辑器
Jul 03 Python
利用rest framework搭建Django API过程解析
Aug 31 Python
django框架中ajax的使用及避开CSRF 验证的方式详解
Dec 11 Python
详解从Django Allauth中进行登录改造小结
Dec 18 Python
详解Go语言运用广度优先搜索走迷宫
Jun 23 Python
用Python仅20行代码编写一个简单的端口扫描器
Apr 08 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
Smarty+QUICKFORM小小演示
2007/02/25 PHP
使用PHP 5.0创建图形的巧妙方法
2010/10/12 PHP
给初学者的30条PHP最佳实践(荒野无灯)
2011/08/02 PHP
通过PHP设置BugFree获取邮箱通知
2019/04/25 PHP
使用composer 安装 laravel框架的方法图文详解
2019/08/02 PHP
推荐自用 Javascript 缩图函数 (onDOMLoaded)……
2007/10/23 Javascript
兼容多浏览器的字幕特效Marquee的通用js类
2008/07/20 Javascript
JavaScript.The.Good.Parts阅读笔记(二)作用域&闭包&减缓全局空间污染
2010/11/16 Javascript
jQuery UI Dialog 创建友好的弹出对话框实现代码
2012/04/12 Javascript
javascript中声明函数的方法及调用函数的返回值
2014/07/22 Javascript
JavaScript验证18位身份证号码最后一位正确性的实现代码
2014/08/07 Javascript
jQuery自带的一些常用方法总结
2014/09/03 Javascript
js 左右悬浮对联广告特效代码
2014/12/12 Javascript
JSP基于Bootstrap分页显示实例解析
2016/06/12 Javascript
Bootstrap文件上传组件之bootstrap fileinput
2016/11/25 Javascript
Vue.js中的图片引用路径的方式
2017/07/28 Javascript
webpack构建换肤功能的思路详解
2017/11/27 Javascript
bootstrap下拉框动态赋值方法
2018/08/10 Javascript
微信小程序实现多个按钮的颜色状态转换
2019/02/15 Javascript
angular6根据environments配置文件更改开发所需要的环境的方法
2019/03/06 Javascript
Python中列表和元组的使用方法和区别详解
2020/12/30 Python
Python利用正则表达式实现计算器算法思路解析
2018/04/25 Python
Python Pywavelet 小波阈值实例
2019/01/09 Python
Python中最大递归深度值的探讨
2019/03/05 Python
python使用minimax算法实现五子棋
2019/07/29 Python
Python爬虫 scrapy框架爬取某招聘网存入mongodb解析
2019/07/31 Python
Python中实现一行拆多行和多行并一行的示例代码
2020/09/06 Python
python PyAUtoGUI库实现自动化控制鼠标键盘
2020/09/09 Python
实现CSS3中的border-radius(边框圆角)示例代码
2013/07/19 HTML / CSS
匡威帆布鞋美国官网:Converse美国
2016/08/22 全球购物
迪卡侬英国官网:Decathlon英国
2017/04/08 全球购物
意大利买卖二手奢侈品网站:LAMPOO
2020/06/03 全球购物
C++面试题:关于链表和指针
2013/06/05 面试题
机械操作工岗位职责
2014/08/08 职场文书
离婚协议书样本
2015/01/26 职场文书
2016年大学生寒假社会实践心得体会
2015/10/09 职场文书