我想得到两个字符串的匹配位置,如下例所示:
sequence = "MTGLKILYH"
alignment = "GPKI---LYH"
pos = get_alignment_position(sequence,alignment)
print(pos)
[-2,-1,0,1,2,3,7,8,9]
您可能会看到,两个字符串可能有所不同(GL
而不是GP
),但是我仍然要保留此字符串,字符串的开头也可以不同因此索引应基于alignment
。
我已经有一个基于difflib
包的几乎工作算法,但是我想知道是否已经存在一种方法?
我有很多不正常的案例,但它无法正常工作,我必须处理所有这些“特殊案例”,并且可能需要进行大量的尝试...因此,如果Magick软件包已经存在...我可以接受= D
谢谢您的帮助!