例如,如果我正在制作一个简单的基于网格的游戏,我可能会有一些二维列表。一个可能用于地形,另一个可能用于物体等。不幸的是,当我需要遍历列表并让一个列表中的正方形内容影响另一个列表的一部分时,我必须做这样的事情。
for i in range(len(alist)):
for j in range(len(alist[i])):
if alist[i][j].isWhatever:
blist[i][j].doSomething()
有没有更好的方法来做这样的事情?
原文由 Eugene M 发布,翻译遵循 CC BY-SA 4.0 许可协议
我将从编写一个生成器方法开始:
然后,每当您需要遍历列表时,您的代码如下所示: