繁体   English   中英

在保持顺序的同时在列表中插入元素

[英]Inserting an element in a list while keeping the order

我有一个有序列表a=[1.1, 2., 4.5] 我想创建一个包含在前一个列表中的新列表b其中元素l=3.1b仍然排序的方式插入。

我会通过以下方式使用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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM