python 同一位置不同的字符以另一个字符代替?怎样实现

我有两条这样的序列文件,现在我想处理的是:将两条序列,合并为一条序列,其中,相同字符的就保留输出,不相同的就以密码子表代替(R=A/G,Y=C/T,M=A/C,K=G/T,S=G/C,W=A/T等形式替换)并输出,如:

img

原始数据:

A01415
cttatcaattgagcaccggtctcaact
A01416
cttgtccactgagctccggtctcaact

预期结果:
cttrtcmaytgagcwccggtctcaact

区分大小写吗?

d = {'AG':'R','CT':'Y','AC':'M','GT':'K','GC':'S','AT':'W'}

s1 = 'cttatcaattgagcaccggtctcaact'
s2 = 'cttgtccactgagctccggtctcaact'

res = []
for i in range(len(s1)):
    if s1[i]!=s2[i]:
        key = (s1[i]+s2[i]).upper()
        if not d.get(key): key=(s2[i]+s1[i]).upper()
        res.append(d.get(key).lower())
    else:
        res.append(s1[i])

print(''.join(res))