字符串的这个东西-翻译表

栏目: Python · 发布时间: 5年前

内容简介:不知道大家是否见过这个东西,反正我清楚记得我是见过的,可是为什么会写这个东西?有以下一个场景:怎样将一个字符串中的中文字符统一转换成英文字符?不知道大家会怎样去做?先列举一个例子:

不知道大家是否见过这个东西,反正我清楚记得我是见过的,可是为什么会写这个东西?有以下一个场景:

怎样将一个字符串中的中文字符统一转换成英文字符?

不知道大家会怎样去做?先列举一个例子:

'hello i'm jim'将其中的 'e' 转换成 'i' , 'o' 转换成 '!'

我的做法是:

s = 'hello i\'m jim'
ch = 'eo'
en_ch = 'i!'

for i, c in enumrate(s):
    if c in ch:
        s = s.replace(c, en_ch[ch.index(c)])

简直就是so easy! , 可是... 这两个字太可怕了,后端老大直接开喷,写的啥玩意.难道还有什么好方法?只能悄咪咪的看人家写喽

s = 'hello i\'m jim'
ch = 'eo'
en_ch = 'i!'
TRANS_TABLE = {ord(f): ord(t) for f, t in zip(ch, en_ch)}

s.translate(TRANS_TABLE)

呦吼!!!,这是什么鬼?怎么记得在哪里看见过,赶紧百度,原来这是翻译表,怎么操作呢?

from string import maketrans
s = 'hello i\'m jim'
ch = 'eo'
en_ch = 'i!'

# python2.0+
# from string import maketrans
# TRANS_TABLE = maketrans(ch, en_ch)
# python3.0+
TRANS_TABLE = str.maketrans(ch, en_ch)

s.translate(TRANS_TABLE)

这样就可以很方便的去处理字符串,而不是像我这样小白只能循环,当然我也不是只能想到循环,还有正则,哈哈哈,但是感觉这种更舒服.最后感叹一句,还是后端老大NB.


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据结构(C语言版)

数据结构(C语言版)

严蔚敏、吴伟民 / 清华大学出版社 / 2012-5 / 29.00元

《数据结构》(C语言版)是为“数据结构”课程编写的教材,也可作为学习数据结构及其算法的C程序设计的参数教材。 本书的前半部分从抽象数据类型的角度讨论各种基本类型的数据结构及其应用;后半部分主要讨论查找和排序的各种实现方法及其综合分析比较。其内容和章节编排1992年4月出版的《数据结构》(第二版)基本一致,但在本书中更突出了抽象数据类型的概念。全书采用类C语言作为数据结构和算法的描述语言。 ......一起来看看 《数据结构(C语言版)》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试