1
Amy 原创整理|资料核验:2026-10-30
Python官方文档说明,bisect系列函数的任务是寻找保持排序的插入位置。bisect_left会定位到已有相同值的左侧,bisect_right则定位到相同值的右侧。使用前提是相关列表区间已经排序。
教学例子:列表[2, 5, 5, 9]中,bisect_left查5返回1,bisect_right查5返回3;查6也会得到一个插入位置3,但这不表示6存在。
若想判断是否找到,应先确认返回位置仍在列表范围内,再检查该位置的值。把“返回了整数”当作查找成功,容易在列表末尾或不存在的值上出错。
Amy建议:练习时同时测试小于最小值、大于最大值、重复值和空列表四类输入。文档也提醒同一序列上的并发修改不安全,不能在另一线程持续改列表时仍假定二分结果可靠。