我试图访问一个正方形2D列表中的相邻元素(上、下、左、右)。但是,当我正在查看的元素位于2D列表的“边缘”时,它将尝试访问不存在的列表索引。下面是我使用的代码:
surroundings = [
my_2D_array[currentY+1][currentX],
my_2D_array[currentY-1][currentX],
my_2D_array[currentY][currentX+1],
my_2D_array[currentY][currentX-1]
]
如何让它“滚动”,所以在一个包含3个项的列表l
中,它不是抛出访问l[3]
的错误,而是直接访问l[0]
?你知道吗
执行“翻滚”或“环绕”的最佳方法是使用模量:
如果您100%确定列表的长度是恒定的,只需将右侧的模数值硬编码到代码中:
这是因为你可以把模数描述为从LHS数中去掉尽可能多的RHS数的倍数,返回剩下的值。因此,
x % y
返回(floor)除以x
后的余数。你知道吗相关问题 更多 >
编程相关推荐