pythonのreversedはイテレータを返す
反転したリストを複数回使うときにハマった
a = reversed([1, 2, 3]) # イテレータを返す for x in a: print(x) for x in a: print(x) # ここは呼ばれない
reverseなどでリスト自体を反転させておくか
a = [1, 2, 3] a.reverse()
for文ごとにreversedを呼べばOK
a = [1, 2, 3] for x in reversed(a): print(x) for x in reversed(a): print(x)
ちなみにsortedはリストを返す模様