有没有办法使用python进行字符翻译(有点像tr命令)
看到 string.translate
import string "abc".translate(string.maketrans("abc", "def")) # => "def"
请注意doc对unicode字符串翻译中细微之处的评论.
编辑:既然tr
有点先进,也可以考虑使用re.sub
.
如果您使用的是python3,则翻译的详细程度较低:
>>> 'abc'.translate(str.maketrans('ac','xy')) 'xby'
啊..而且还有相当于tr -d
:
>>> "abc".translate(str.maketrans('','','b')) 'ac'
对于tr -d
python2.x,使用另一个参数来转换函数:
>>> "abc".translate(None, 'b') 'ac'
我开发了python-tr,实现了tr算法.我们来试试吧.
安装:
$ pip install python-tr
例:
>>> from tr import tr >>> tr('bn', 'cr', 'bunny') 'curry' >>> tr('n', '', 'bunny', 'd') 'buy' >>> tr('n', 'u', 'bunny', 'c') 'uunnu' >>> tr('n', '', 'bunny', 's') 'buny' >>> tr('bn', '', 'bunny', 'cd') 'bnn' >>> tr('bn', 'cr', 'bunny', 'cs') 'brnnr' >>> tr('bn', 'cr', 'bunny', 'ds') 'uy'
https://pypi.python.org/pypi/python-tr
https://github.com/ikegami-yukino/python-tr