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

Python中bisect的用法及示例详解

来源:互联网 收集:自由互联 发布时间:2021-04-02
bisect是python内置模块,用于有序序列的插入和查找。 查找: bisect(array, item) 插入: insort(array,item) 查找 import bisect a = [1,4,6,8,12,15,20]position = bisect.bisect(a,13)print(position) # 用可变序列内置的

bisect是python内置模块,用于有序序列的插入和查找。

  • 查找: bisect(array, item)
  • 插入: insort(array,item)

查找

import bisect
 
a = [1,4,6,8,12,15,20]
position = bisect.bisect(a,13)
print(position)
 
# 用可变序列内置的insert方法插入
a.insert(position,13)
print(a)

输出:

5
[1, 4, 6, 8, 12, 13, 15, 20]

 插入

使用bisect.insort,比bisect先查找该插入哪个位置,再用insert方法插入更加快速的方法

import bisect
 
a = [1,4,6,8,12,15,20]
bisect.insort(a,13)
print(a)

[1, 4, 6, 8, 12, 13, 15, 20]

NOTE

bisect还有bisect_left,insort_left的用法,和不带left的用法的区别是:当插入的元素和序列中的某一个元素相同时,该插入到该元素的前面(左边,left),还是后面(右边);如果是查找,则返回该元素的位置还是该元素之后的位置。

到此这篇关于Python中bisect的用法及示例详解的文章就介绍到这了,更多相关Python中bisect用法内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

网友评论