当前位置 : 主页 > 编程语言 > python >

bisect

来源:互联网 收集:自由互联 发布时间:2022-06-15
import bisect print(dir(bisect)) 看看模块的结构: #['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'bisect', ## 'bisect_left', 'bisect_right', 'insort', 'insort_left', 'inso
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)
网友评论