擅长:python、mysql、java
<p>当您看到匹配的标题行时,可以非常简单地设置一个标志</p>
<pre class="lang-py prettyprint-override"><code>with open('x.fasta') as fasta, open('x1.fasta', 'w') as output:
for line in fasta:
if line.startswith('>'):
select = line.endswith('1\n')
if select:
output.write(line)
</code></pre>
<p>这避免了将整个文件读入内存;一次只检查一行</p>
<p>可能会注意到<code>line</code>将在行尾包含换行符。我选择只保留它;有时,如果您使用<code>line = line.rstrip('\n')</code>对其进行修剪并在必要时将其添加回输出中,事情会变得更容易</p>