【发布时间】:2020-04-03 21:29:05
【问题描述】:
所以基本上我必须在嵌套列表中找到与其周围的数字相比最小的数字。这将被称为“接收器”,如果它是接收器,则该函数返回 True,否则返回 False。例如,如果嵌套列表是
[[1, 2, 1],
[4, 6, 5],
[7, 8, 9]]
那么 [0,2], (1) 处的数字应该为真,因为与其相邻的所有值都小于 1,但 [2, 0], (7) 处的数字不应该为真因为它大于它周围的一些值。
我尝试使用切片来获取旁边的数字,但我不知道如何切片以从水槽或上方或下方获取对角线的数字。 这是我尝试做的一些代码:
for x in elevation_map:
for xs in x:
if elevation_map[cell[0]][cell[1]] < xs[cell[0]]:
return True
return False
【问题讨论】:
-
欢迎来到 Stack Overflow!查看tour。请为该输入添加完整的预期输出。你可以edit这个问题。我想应该是
[[True, False, True], [False, False, False], [False, False, False]]。如果您需要更多建议,请参阅 How to Ask 和 minimal reproducible example。 -
这似乎是 NumPy 擅长的。
-
你算什么“相邻”——四个正交方向,还是包括对角线在内的八个方向?
标签: python python-3.x