擅长:python、mysql、java
<p>这里是摩西·科莱多耶的答案的一个变体,它检查了<code>></code>的第一个字符,并丢弃任何匹配项以及任何空元素。我还包括将“-”替换为“Z”。你知道吗</p>
<pre><code>lst = ['>1\n', 'TCCGGGGGTATC\n', '>2\n', 'TCCGTGGGTATC\n',
'>3\n', 'TCCGTGGGTATC\n', '>4\n', 'TCCGGGGGTATC\n',
'>5\n', 'TCCGTGGGTATC\n', '>6\n', 'TCCGTGGGTATC\n',
'>7\n', 'TCCGTGGGTATC\n', '>8\n', 'TCCGGGGGTATC\n','\n',
'$$$\n', '\n',
'>B1\n', 'ATCGGGGGTATT\n', '>B2\n', 'TT-GTGGGAATC\n',
'>3\n', 'TTCGTGGGAATC\n', '>B4\n', 'TT-GTGGGTATC\n',
'>B5\n', 'TTCGTGGGTATT\n', '>B6\n','TTCGGGGGTATC\n',
'>B7\n', 'TT-GTGGGTATC\n', '>B8\n', 'TTCGGGGGAATC\n',
'>B9\n', 'TTCGGGGGTATC\n','>B10\n', 'TTCGGGGGTATC\n',
'>B42\n', 'TT-GTGGGTATC\n']
result = [[]]
for x in lst:
if x.startswith('>'):
continue
if x.startswith('$$$'):
result.append([])
continue
x = x.strip()
if x:
result[-1].append(x.replace("-", "Z"))
print(result)
</code></pre>
<p>这避免了为任何元素的长度指定任何特定的意义。你知道吗</p>