我有一个包含二维列表的列表,因此例如 records[a][b] 将是其中的一个值。有一些标准应该过滤它。我使用了“for”和“if”的组合来做到这一点,它奏效了。然后必须添加一些额外的标准来过滤掉具有坐标值的点,这些点在当前迭代点周围的 10*10 单位范围内。但是我的代码编译但没有做任何事情,我不知道为什么(因为我还是 Python 的新手)。
for rec in range(1,len(records)-1):
for koor in range(1,len(records)-1):
if records[rec][4]+10 >= records[koor][4] >= records[rec][4]-10 and\
records[rec][5]+10 >= records[koor][5] >= records[rec][5]-10 and\
-1.00036 <= records[rec][8] / records[koor][8] <= 1.00036:
我认为它会做的是在定义的区域(第 3 行和第 4 行)中寻找点,并且只让它们在第 5 行的条件下通过。但它让一切都通过。为什么这不起作用?
编辑:记录[a] 形式的一个条目如下所示: ['30.12.1899 08:47:00', '7.2.2003 00:00:00', 48.82, 11.2, 4441489.89, 5410519.48, 4, 1.2 , 508.55, 0.0, 0.0, 2]。