Pythonのリストのreverseメソッドは破壊的

>>> a = range(10)
>>> print a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a.reverse()
>>> print a
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

このように、reverseメソッドはリストaの反転を返却するのではなく、自信を反転する。
だから for文では思うよには使えない。

>>> b = range(10)
>>> for i in b.reverse():
...     print i
...
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'NoneType' object is not iterable