我有一个列表,其中包含角度集的上限和下限
有点像
[[1,22],[2,24]…[359,15],[360,21]]
共360个元素
现在我要检查从1到360的每个角度列表中包含该角度的元素
我在考虑使用下限和上限来创建带有range
或{np.arange
会生成空列表
for i in range(1,361):
sel=[]
for coe in coef:
if i in range(coe[0],coe[1]):
sel.append(coe)
我也尝试了itertools
和cycle
,但我不知道如何在这种情况下应用它
标准的方法是使用模数。{s1}的A1}显示了如何在C/C++中实现这一点。在
下面是一个Python实现和测试。Python中的代码更简单,因为在Python中
a % b
总是与b
具有相同的符号。在测试代码以60为步进,循环从0到360度的所有角度对,对于
a
和b
,测试所有角度x
,每30步从0到360度。扇区从a
开始,然后扫描到b
。因此,扇区(60,120)包含60°,但是(120,60)包含300°。在如果
x
在扇区内(包括端点),它将被添加到result
列表中。在输出
^{pr2}$这是一个使用问题中的数据的测试。在
输出
也许使用定制的比较功能?在
然后测试角度是否在以下任一间隔内:
^{pr2}$相关问题 更多 >
编程相关推荐