擅长:python、mysql、java
<p>我会按行分割,抓住最后两行,然后迭代压缩在一起的两行,并使用不是<code>" "</code>的字符!你知道吗</p>
<pre><code>def combinebases(base_data):
lines = base_data.splitlines()[-2:]
output = list()
lines[0] = lines[0].lower()
for ch1, ch2 in zip(*lines):
output.append(max(ch1, ch2))
return ''.join(output[10:-4])
</code></pre>
<p>可能更安全的结果是返回:</p>
<pre><code> return re.search("(?<=miRNA 3' )[augc]+", ''.join(output), re.I).group()
</code></pre>
<p>然而,如果你的每一个基长度都是一样的,正则表达式就太过了。你知道吗</p>
<p>结果:</p>
<pre><code>>>> txt = """$target: ENSG00000097007|ABL1
length: 3075
miRNA : hsa-miR-203
length: 22
mfe: -30.5 kcal/mol
p-value: 0.606919
position: 2745
target 5' C G C 3'
GUGGUCCUGGACA CAC
CACCAGGAUUUGU GUG
miRNA 3' GAU AAA 5'"""
>>> combinebases(txt)
'GAUcaccaggauuuguAAAgug'
</code></pre>