擅长:python、mysql、java
<p>我会把它改写成最小距离搜索:</p>
<pre><code>if name in exons:
y = exons[name]
minDist = 99999 # large number
minIdx = None
minNum = None
for i, (low,high) in enumerate(y):
dlow = abs(low - ppos1)
dhigh = abs(high - ppos1)
dist = min(dlow, dhigh)
if dist < minDist:
minDist = dist
minIdx = i
minNum = 0 if dlow < dhigh else 1
print(y[minIdx])
print(y[minIdx][minNum])
</code></pre>
<p>这会忽略搜索范围,只搜索最小距离对。你知道吗</p>