如何反向循环?

时间:2012-06-09 02:02:20

标签: python algorithm loops for-loop simulation

我正在制作水模拟程序,我需要它来执行y,x循环。但我需要它先检查最底层,然后再检查。这是我的lvl:

lvl = [[0, 0, 1, 0, 0],
       [0, 0, 1, 0, 0],
       [0, 0, 1, 0, 0],
       [0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0]]

我需要它来检查lvl [4]然后lvl [3],lvl [2]等等。请帮忙!

注意:我正在使用嵌套for循环,所以我可以检查y,x。

2 个答案:

答案 0 :(得分:8)

您可以使用reversed内置方法来反转列表清单的排序:

for li in reversed(lvl):
    print li

输出:

[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 1, 0, 0]
[0, 0, 1, 0, 0]
[0, 0, 1, 0, 0]

答案 1 :(得分:3)

如果您使用for循环,则可以使用range生成反向序列,以便将lvl编入索引。

>>> range(4,-1,-1)
[4, 3, 2, 1, 0]

,也许类似于:

>>> for i in range(4,-1,-1):
...     print lvl[i]
...
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 1, 0, 0]
[0, 0, 1, 0, 0]
[0, 0, 1, 0, 0]
>>>