我需要在python中替换string中的所有字符

时间:2013-11-10 10:28:35

标签: python

我需要通过完全扫描字符串来替换字符。正则表达式对此有帮助吗?

Input: AAAGCCTT 
Output: TTTCGGAA.

我尝试使用replace,但我觉得它没有帮助。

3 个答案:

答案 0 :(得分:8)

此:

import string
print('AAAGCCTT'.translate(string.maketrans('AGCT','TCGA')))

出:

TTTCGGAA

答案 1 :(得分:4)

在Python3中,您甚至不需要导入字符串模块

Python 3.3.2+ (default, Oct  9 2013, 14:50:09) 
[GCC 4.8.1] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print('AAAGCCTT'.translate(str.maketrans('AGCT','TCGA')))
TTTCGGAA

答案 2 :(得分:1)

你需要这样的功能:

from string import maketrans
trans_table = maketrans('ACGT','TGCA')

def trans(s):
    return s.translate(trans_table)

然后你可以像这样使用它:

>>> trans('AAAGCCTT')
'TTTCGGAA'