[英]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.