如何将字符串拆分为部分,每个部分在python中只包含相同的字符
我想得到一个DNA序列作为一个字符串,我需要将该字符串拆分为一个列表的各个部分。每个部分必须只包含相同的字符。最终的输出必须是一个列表,按照原始序列的顺序使用python 3.4 例如:-如何将字符串拆分为部分,每个部分在python中只包含相同的字符,python,Python,我想得到一个DNA序列作为一个字符串,我需要将该字符串拆分为一个列表的各个部分。每个部分必须只包含相同的字符。最终的输出必须是一个列表,按照原始序列的顺序使用python 3.4 例如:-infected=“AATTTGCCAAA” 我需要得到如下输出 Modified. = ['AA','TTT','G','CC','AAA' ] def fchar(通道,mi): 全球numLi fc=ch li=“” 对于受感染的[mi:]中的c: 如果fc==c: li+=fc mi=mi+1 其他
infected=“AATTTGCCAAA”
我需要得到如下输出
Modified. = ['AA','TTT','G','CC','AAA' ]
def fchar(通道,mi):
全球numLi
fc=ch
li=“”
对于受感染的[mi:]中的c:
如果fc==c:
li+=fc
mi=mi+1
其他:
打破
如果midef fchar(通道,mi):
全球numLi
fc=ch
li=“”
对于受感染的[mi:]中的c:
如果fc==c:
li+=fc
mi=mi+1
其他:
打破
如果mi这就是原因:
这就是为什么:
你试过什么吗?似乎是一项简单的任务。对不起,我不能提及我需要实现一个算法来完成这项任务。你尝试过什么吗?似乎是一项简单的任务。对不起,我不能提及我需要实现一个算法来完成这项任务Thanx先生。它也在工作。我需要知道groupby是否是python中的内置包。@ThilinaChathuranga欢迎,group
by不是内置函数,您需要从python默认模块之一的itertools
模块导入它。@Kasramvd:thanx很多,看起来很简单。但实际上我需要做一个算法并实现我所需要的。因为这是一个老生常谈的问题,需要算法。所以我不能导入和使用预定义的函数。不管怎样,Thanx先生。它也在工作。我需要知道groupby是否是python中的内置包。@Thilinachhuranga欢迎,group
by不是内置函数,您需要从python默认模块之一的itertools
模块导入它。@Kasramvd:thanx很多,看起来很简单。但实际上我需要做一个算法并实现我所需要的。因为这是一个需要算法的问题。所以我不能导入和使用预定义的函数。无论如何,Thanx很多,实际上我只需要算法来实现它,所以代码意味着很多,,实际上我只需要算法来实现这个,所以代码意义重大
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)
>>> from itertools import groupby
>>> infected ="AATTTGCCAAA"
>>>
>>> [''.join(g) for _,g in groupby(infected)]
['AA', 'TTT', 'G', 'CC', 'AAA']