import bisect
data = [2,4,7,9]
# * 使用該模塊時需確保操作的列表是已排序的
# bisect.insort(list, boj) 在有序列表中插入元素,不影響原有的排序,插入後的列表仍是有序的
bisect.insort(data, 3)
print(data) # data = [2,3,4,7,9] 使用bisect.insort()結果是有序列表
# insort_left 和 insort_right 用於有重複元素的列表,left-插入在重複元素之前,right-插入在重複元素之後
# bisect.bisect(list, obj) 其目的在於查找該數值將會插入的位置並返回,而不會插入
bisect.bisect(data, 1) # 0 返回應該插入的位置
print(data) # data = [2,3,4,7,9]
# bisect_left 和 bisect_right 函數,該函數用入處理將會插入重複數值的情況,返回將會插入的位置
# left-插入在重複元素之前,right-插入在重複