0
点赞
收藏
分享

微信扫一扫

bisect

RJ_Hwang 2022-05-13 阅读 76
import bisect

print(dir(bisect))
看看模块的结构:
#['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'bisect',
## 'bisect_left', 'bisect_right', 'insort', 'insort_left', 'insort_right']

data = [4,2,9,7]
data.sort()
print(data)
#[2, 4, 7, 9]
先看看 insort 函数:
bisect.insort(data,3)
print(data)
#[2, 3, 4, 7, 9]
bisect.insort(data,1)
print(data)
#[1, 2, 3, 4, 7, 9]
接着看 bisect_left 和 bisect_right 函数,该函数用入处理将会插入重复数值的情况,返回将会插入的位置:
print(bisect.bisect_left(data,4))
print(bisect.bisect_right(data,7))


其对应的插入函数是 insort_left 和 insort_right :
bisect.insort_left(data,8)
bisect.insort_right(data,8)

print(data)
举报

相关推荐

0 条评论