擅长:python、mysql、java
<p>一个简单的解决方案是压缩两个列表,并使用一个列表中的元组元素作为另一个列表的切片参数:</p>
<pre><code>[l2[l1[0] : l1[1] + 1] for l1, l2 in zip(list_1, list_2)]
#['GCATGCGAG', 'GTCGTCGACGT', 'TACGATCGATCGATCGATC']
</code></pre>
<p>如果元组的第二个元素是子序列结束后的下一个元素(这是一个“正常”的Python约定),那么您可以得到一个更优雅的解决方案:</p>
<pre><code>[l2[slice(*l1)] for l1, l2 in zip(list_1, list_2)]
#['GCATGCGA', 'GTCGTCGACG', 'TACGATCGATCGATCGAT']
</code></pre>