使用流量控制命令查找用户输入 xmax、xmin、ymax、ymin 和打印 "point" 名称之间是否存在 "point" (x,y) 的代码
Code for finding if a "point" (x,y) in between a user inputed, xmax,xmin,ymax,ymin and printing "point" name using flow control commands
给定点和位置 (x,y) 的嵌套列表:
pointlist = [[[-174.6, 52], 'A'], [[-152, 58], 'B'], [[-166.1, 53], 'C']],[ [90, -179.7], 'D']]
我需要帮助创建一个代码,该代码将判断一个点是否位于用户输入的 xmax、xmin、ymax、ymin 之间。如果点列表中的点在 xmax-xmin 和 ymax-ymin 值的范围内,则代码需要打印包含的一个或多个点的名称。
数据列表格式为
pointlist= [[x值, y值], 'point name']
我已经定义了用户将输入的变量:
xmax = float(input("Enter a maximum x value:"))
xmin = float(input("Enter a minimum x value:"))
ymax = float(input("Enter a maximum y value:"))
ymin = float(input("Enter a minimum y value:"))
我知道我需要使用 If 和 For 语句,以及 => 和 <=,但我不确定如何将其与数据集中涉及的负值相关联。我们的老师希望能够在更大的数据集上使用这段代码。上面她给我们的只是练习的小样本。
这是我的尝试。它输出为列表:
pointlist = [[[-174.6, 52], 'A'], [[-152, 58], 'B'], [[-166.1, 53], 'C'],[[90, -179.7], 'D']]
def check(xmax, xmin, ymax, ymin):
in_range = []
for i in pointlist:
if i[0][0] >= xmin and i[0][0] <= xmax and i[0][1] >= ymin and i[0][1] <= ymax:
in_range.append(i[1])
return in_range
一些例子:
>>>print(check(100, -180, 60, -180))
['A', 'B', 'C', 'D']
>>>print(check(100, -170, 60, -180))
['B', 'C', 'D']
>>>print(check(80, -180, 60, -180))
['A', 'B', 'C']
>>>print(check(100, -180, 55, -180))
['A', 'C', 'D']
>>>print(check(100, -180, 60, -170))
['A', 'B', 'C']
给定点和位置 (x,y) 的嵌套列表: pointlist = [[[-174.6, 52], 'A'], [[-152, 58], 'B'], [[-166.1, 53], 'C']],[ [90, -179.7], 'D']]
我需要帮助创建一个代码,该代码将判断一个点是否位于用户输入的 xmax、xmin、ymax、ymin 之间。如果点列表中的点在 xmax-xmin 和 ymax-ymin 值的范围内,则代码需要打印包含的一个或多个点的名称。
数据列表格式为 pointlist= [[x值, y值], 'point name']
我已经定义了用户将输入的变量:
xmax = float(input("Enter a maximum x value:"))
xmin = float(input("Enter a minimum x value:"))
ymax = float(input("Enter a maximum y value:"))
ymin = float(input("Enter a minimum y value:"))
我知道我需要使用 If 和 For 语句,以及 => 和 <=,但我不确定如何将其与数据集中涉及的负值相关联。我们的老师希望能够在更大的数据集上使用这段代码。上面她给我们的只是练习的小样本。
这是我的尝试。它输出为列表:
pointlist = [[[-174.6, 52], 'A'], [[-152, 58], 'B'], [[-166.1, 53], 'C'],[[90, -179.7], 'D']]
def check(xmax, xmin, ymax, ymin):
in_range = []
for i in pointlist:
if i[0][0] >= xmin and i[0][0] <= xmax and i[0][1] >= ymin and i[0][1] <= ymax:
in_range.append(i[1])
return in_range
一些例子:
>>>print(check(100, -180, 60, -180))
['A', 'B', 'C', 'D']
>>>print(check(100, -170, 60, -180))
['B', 'C', 'D']
>>>print(check(80, -180, 60, -180))
['A', 'B', 'C']
>>>print(check(100, -180, 55, -180))
['A', 'C', 'D']
>>>print(check(100, -180, 60, -170))
['A', 'B', 'C']