zoukankan      html  css  js  c++  java
  • python 模块之 bisect

        python一个有趣的模块,bisect,感觉挺有趣,怎么有趣呢,下面来给你道来。

       我们先生成一个list

       

    data=[4,8,7,1]
    data.sort()

    打印这个list 

    [1,4,7,8]

    导入 bisect

    import  bisect

    插入数据

    bisect.insort(data,3)

    打印data

    [1, 3, 4, 7, 8]

    可见插入后没有打破原来的list排序

    我们再使用领一个函数

    print(bisect.bisect(data,2))

    打印1

    这里是打印的插入的位置。但是不会真正的插入

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

    print(bisect.bisect_left(data,2))
    print(bisect.bisect_right(data,2))
    结果:
    1 1

    不会插入的,但是

     insort_left  和 insort_right 就是插入

    bisect.insort_right(data,2)
    bisect.insort_left(data,2)

    执行结果

    [1, 2, 2, 4, 7, 8]

    结果一样,插入不一样。

    开源地址:https://github.com/liwanlei/

     联系我:QQ:952943386 email:leileili126@163.com  qq群:194704520  新群:683894834

  • 相关阅读:
    day2-元组 列表-赋值和深浅拷贝
    day1-bytes类型 三元运算 进制
    DAY02
    DAY02
    Python格式化、显示颜色
    DAY02
    DAY02
    DAY02
    DAY02
    DAY02
  • 原文地址:https://www.cnblogs.com/leiziv5/p/9288246.html
Copyright © 2011-2022 走看看