首页 >后端开发 >Python教程 >一个有趣的python排序模块:bisect

一个有趣的python排序模块:bisect

高洛峰
高洛峰原创
2016-12-14 15:31:241587浏览

 今天同事说到了一个python的排序模块bisect,觉得挺有趣的,跟大家分享分享。

       先看看模块的结构:

      2.jpg

       前面五个属性大家感兴趣可以打出来看看数值,这里就不介绍了。

       先说明的是,使用这个模块的函数前先确保操作的列表是已排序的。

      2.jpg

       先看看 insort  函数:

       2.jpg

       其插入的结果是不会影响原有的排序。

       再看看 bisect  函数:

       2.jpg

       其目的在于查找该数值将会插入的位置并返回,而不会插入。

       接着看 bisect_left 和 bisect_right 函数,该函数用入处理将会插入重复数值的情况,返回将会插入的位置:

       2.jpg

       其对应的插入函数是 insort_left  和 insort_right :

       2.jpg

       可见,单纯看其结果的话,两个函数的操作结果是一样的,其实插入的位置不同而已。


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn