猿问

如何拆分列表

我有一个名为 lst 的列表,如下所示:

lst = ['A', 'C', 'T', 'G', 'A', 'C', 'G', 'C', 'A', 'G']

我想知道的是如何将其拆分为以第一个、第二个、第三个和第四个字母开头的四个字母字符串;然后移动到第二个、第三个、第四个和第五个字母等等,然后将其添加到一个新列表以与主列表进行比较。


白板的微信
浏览 298回答 3
3回答

呼唤远方

采用:lst = ['A', 'C', 'T', 'G', 'A', 'C', 'G', 'C', 'A', 'G']i=0New_list=[]while i<(len(lst)-3):&nbsp; &nbsp; New_list.append(lst[i]+lst[i+1]+lst[i+2]+lst[i+3])&nbsp; &nbsp; i+=1print(New_list)输出:['ACTG', 'CTGA', 'TGAC', 'GACG', 'ACGC', 'CGCA', 'GCAG']

子衿沉夜

我认为其他答案可以解决您的问题,但是如果您正在寻找一种Python的方式来做到这一点,我使用了List comprehension。强烈建议使用它来简化代码,尽管有时会降低代码的可读性。它也很短。lst = ['A', 'C', 'T', 'G', 'A', 'C', 'G', 'C', 'A', 'G']result = [''.join(lst[i:i+4]) for i in range(len(lst)-3)]print(result)

动漫人物

所有 4 克(无填充):# window size:ws = 4lst2 = [&nbsp; &nbsp; ''.join(lst[i:i+ws])&nbsp; &nbsp; for i in range(0, len(lst))&nbsp; &nbsp; if len(lst[i:i+ws]) == 4]不重叠的 4 克:lst3 = [&nbsp; &nbsp; ''.join(lst[i:i+ws])&nbsp; &nbsp; for i in range(0, len(lst), ws)&nbsp; &nbsp; if len(lst[i:i+ws]) == 4]
随时随地看视频慕课网APP

相关分类

Python
我要回答