擅长:python、mysql、java
<pre><code>def get_name(line):
return line[1:].rsplit('|', 1)[-1].strip()
with open('input.txt') as f, open('output.txt', 'w') as fout:
name = ''
# Phase 1: Find unavailable sequence
unavailable = set()
for line in f:
if line.startswith('>'):
name = get_name(line)
else:
if 'Sequence unavailable' in line:
unavailable.add(name)
# Phase 2: Filter avilable sequence
f.seek(0)
keep = False
for line in f:
if line.startswith('>'):
name = get_name(line)
keep = name not in unavailable
if keep:
fout.write(line)
</code></pre>