将对象与python字典/hashtab中的键进行比较

2024-05-14 12:36:07 发布

您现在位置:Python中文网/ 问答频道 /正文

也许我的标题会让人误解,但让我澄清一下我的问题:

下面是一个列表:

chr1:100-200 100 100
chr1:350-500 150 250
chr1:780-880 100 350
chr1:900-950 50  400

所以基本上第一列是坐标范围,第二列是间隔长度(从第一列减去两个坐标),第三列是间隔长度的累加。你知道吗

现在我有一个号码,比如说120。我需要做的是:因为100<;120<;250(将我的对象与键进行比较),并且键应该指向值“chr1:350-500”; 类似地,如果我的数字是360,那么由于是350<;360<;400,所以值应该是:“chr1:900-950”

希望我已经说清楚了。我想我应该使用字典或哈希表来解决这个问题,但是这里涉及到将我的对象与键进行比较;我不知道怎么做。你知道吗

非常感谢


Tags: 对象lt标题列表间隔字典数字号码
1条回答
网友
1楼 · 发布于 2024-05-14 12:36:07

实际上,没有

>>> ranges = ['chr1:100-200', 'chr1:350-500', 'chr1:780-880', 'chr1:900-950']
>>> accums = [100, 250, 350, 400]
>>> ranges[bisect.bisect_left(accums, 120)]
'chr1:350-500'
>>> ranges[bisect.bisect_left(accums, 360)]
'chr1:900-950'

相关问题 更多 >

    热门问题