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 写入csv乱码问题解决方法
Oct 23 Python
Python实现PS图像明亮度调整效果示例
Jan 23 Python
python用插值法绘制平滑曲线
Feb 19 Python
pycharm中使用anaconda部署python环境的方法步骤
Dec 19 Python
python将字符串list写入excel和txt的实例
Jul 20 Python
PyCharm搭建Spark开发环境的实现步骤
Sep 05 Python
python实现单目标、多目标、多尺度、自定义特征的KCF跟踪算法(实例代码)
Jan 08 Python
pycharm开发一个简单界面和通用mvc模板(操作方法图解)
May 27 Python
python3将变量输入的简单实例
Aug 19 Python
python中@property的作用和getter setter的解释
Dec 22 Python
Pytorch 实现变量类型转换
May 17 Python
python中 Flask Web 表单的使用方法
May 20 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后退一页表单内容保存实现方法
2012/06/17 PHP
仿dedecms下拉分页样式修改的thinkphp分页类实例
2014/10/30 PHP
laravel-admin 实现在指定的相册下添加照片
2019/10/21 PHP
繁简字转换功能
2006/07/19 Javascript
cument.execCommand()用法深入理解
2012/12/04 Javascript
javascrip关于继承的小例子
2013/05/10 Javascript
javascript 动态创建表格的2种方法总结
2015/03/04 Javascript
JavaScript操作XML文件之XML读取方法
2015/06/09 Javascript
jQuery siblings()用法实例详解
2016/04/26 Javascript
jQuery Tags Input Plugin(添加/删除标签插件)详解
2016/06/20 Javascript
详解基于javascript实现的苹果系统底部菜单
2016/12/02 Javascript
React Router基础使用
2017/01/17 Javascript
jQuery使用正则验证15/18身份证的方法示例
2017/04/27 jQuery
Vue axios全局拦截 get请求、post请求、配置请求的实例代码
2018/11/28 Javascript
更强大的vue ssr实现预取数据的方式
2019/07/19 Javascript
vue实现将一个数组内的相同数据进行合并
2019/11/07 Javascript
Python I/O与进程的详细讲解
2019/03/08 Python
Python multiprocess pool模块报错pickling error问题解决方法分析
2019/03/20 Python
详解用python自制微信机器人,定时发送天气预报
2019/03/25 Python
Pandas实现dataframe和np.array的相互转换
2019/11/30 Python
Python魔法方法 容器部方法详解
2020/01/02 Python
Python 操作 PostgreSQL 数据库示例【连接、增删改查等】
2020/04/21 Python
基于Python实现全自动下载抖音视频
2020/11/06 Python
python编程的核心知识点总结
2021/02/08 Python
css3 矩阵的使用详解
2018/03/20 HTML / CSS
HTML5制作3D爱心动画教程 献给女友浪漫的礼物
2014/11/05 HTML / CSS
波兰香水和化妆品购物网站:Notino.pl
2017/11/07 全球购物
乐高奥地利官方商店:LEGO Shop AT
2019/07/16 全球购物
基本公共卫生服务健康教育工作方案
2014/05/22 职场文书
群众路线专项整治工作情况报告
2014/10/28 职场文书
员工福利申请报告
2015/05/15 职场文书
新生开学寄语大全
2015/05/28 职场文书
地道战观后感2000字
2015/06/04 职场文书
Python数据清洗工具之Numpy的基本操作
2021/04/22 Python
golang操作redis的客户端包有多个比如redigo、go-redis
2022/04/14 Golang
html,css,javascript是怎样变成页面的
2023/05/07 HTML / CSS