[英]Inserting an element in a list while keeping the order
我有一個有序列表a=[1.1, 2., 4.5]
。 我想創建一個包含在前一個列表中的新列表b
其中元素l=3.1
以b
仍然排序的方式插入。
我會通過以下方式使用numpy
來做到這一點:
import numpy as np
b=a[:np.searchsorted(a, l)]+[l]+a[np.searchsorted(a, l):]
是否有更多合成方法,例如使用某些特定的numpy
函數?
一般來說,你可以使用bisect.insort_left
from bisect import insort_left
a=[1.1, 2., 4.5]
insort_left(a, 3.1)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.