我想得到一个DNA序列作为字符串,我需要将字符串拆分成列表的一部分。每个部分必须只包含相同的字符。最终输出必须是根据原始顺序的列表序列使用python 3.4
例如: - google-chrome
我需要按照以下方式获得输出
infected ="AATTTGCCAAA"
答案 0 :(得分:4)
itertools.groupby
的用途是什么:
>>> from itertools import groupby
>>> infected ="AATTTGCCAAA"
>>>
>>> [''.join(g) for _,g in groupby(infected)]
['AA', 'TTT', 'G', 'CC', 'AAA']
答案 1 :(得分:1)
def fchar(ch,mi):
global numLi
fc=ch
li=""
for c in infected[mi:]:
if fc==c :
li+=fc
mi = mi+1
else:
break
if mi<len(infected) :
return li+" "+fchar(infected[mi],mi)
else:
return li
infected =input("Enter DNA sequence\n") ;#"AAATTTTTTTTGCCCCCCA"
x=fchar(infected[0],0)
newSet = x.split(' ')
print(newSet)