• 我有一个数组,看起来像这样:[1,2,4,1,2,5,1,2,6]
  • 给定值3
  • 我想在上面的列表中找到封装给定值的所有值对.

我可以使用对分法找到[2,6]值,但如何找到所有值?

x = np.array([1,2,4,1,2,5])
xL = bisect_left(x,start)-1
xU = bisect_left(x,start)
print(xL ," ", xU)
lower = x[xL]
upper = x[xU]
print(lower, upper)

附笔.

推荐答案

你可以这样做:

import numpy as np


x = np.array([1, 2, 4, 1, 2, 5, 1, 2, 6])

x_left = x[:-1]
x_right = x[1:]

encapsulation = np.where((x_left < 3) & (x_right > 3))
left_encapsulation_values = x_left[encapsulation]
right_encapsulation_values = x_right[encapsulation]

您有一个用于左值的数组(不包含最后一个元素,因为它没有右邻居)和一个用于右值的数组(没有第一个元素,同样的 idea ).然后用定义的条件屏蔽这些数组,瞧,有了封装3的左右值.

left_encapsulation_values=array([2, 2, 2])
right_encapsulation_values=array([4, 5, 6])

Python相关问答推荐

标题:如何在Python中使用嵌套饼图可视化分层数据?

输出中带有南的亚麻神经网络

Python键入协议默认值

如何在python polars中停止otherate(),当使用when()表达式时?

将tdqm与cx.Oracle查询集成

如何从数据库上传数据到html?

在Admin中显示从ManyToMany通过模型的筛选结果

使用__json__的 pyramid 在客户端返回意外格式

无法在Spyder上的Pandas中将本地CSV转换为数据帧

jsonschema日期格式

获取git修订版中每个文件的最后修改时间的最有效方法是什么?

Regex用于匹配Python中逗号分隔的AWS区域

为什么我的scipy.optimize.minimize(method=";newton-cg";)函数停留在局部最大值上?

我可以同时更改多个图像吗?

为什么在安装了64位Python的64位Windows 10上以32位运行?

搜索结果未显示.我的URL选项卡显示:http://127.0.0.1:8000/search?";,而不是这个:";http://127.0.0.1:8000/search?q=name";

是否从Python调用SHGetKnownFolderPath?

S最大值除以最小值,然后减1的结果是什么?

更新-如何与一个我无法使用python获得的按钮进行交互-Selify?

Python-迭代PANAS中的数据框并替换列表中不包含字符串的值