gpt4 book ai didi

python - 在列表中查找列表中的周围数字 Python

转载 作者:太空宇宙 更新时间:2023-11-03 14:26:22 25 4
gpt4 key购买 nike

我在列表环境中查找列表中的周围数字时遇到问题。这个想法是,列表在彼此之下形成一个网格。

grid= [[1, 5, 4, 1], 
[2, 5, 3, 2],
[6, 3, **6**, 3],
[1, 4, 2, 1]]

我尝试编写的函数将数字的位置和网格本身作为给定值。程序应该找到周围的数字。例如有了这个

>>> grid= [[1, 5, 4, 1], [2, 5, 3, 2], [6, 3, **6**, 3], [1, 4, 2, 1]]
>>> neighbours(2, 2, grid)
{1, 2, 3, 4, 5}

在此示例中,选择的元素是粗体 6。我不知道如何在不不断超出索引或使代码变得极其困难的情况下做到这一点。

任何帮助将不胜感激

最佳答案

收集邻居和单元格本身,然后删除单元格本身。

def neighbours(i, j, grid):
vals = sum((row[j-(j>0):j+2] for row in grid[i-(i>0):i+2]), [])
vals.remove(grid[i][j])
return set(vals)

关于python - 在列表中查找列表中的周围数字 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47622065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com