エラーが発生するか、None の値が変数「親」に割り当てられるまでループするコードがあります。ループごとに、actionList と呼ばれるリストに値を追加します。print ステートメントを使用すると、ループの繰り返しごとにリストが大きくなっていくことがわかります。ただし、(キャッチされた KeyError によって) ループを終了した後、print ステートメントは、リストに None の値が割り当てられていることを明らかにします。何が起こっているのか分かりますか?
while parent is not None:
print "iterating"
print actionList
try:
pathList.append(parentMap[parent])
except KeyError:
break
actionList.append(actionMap[parent])
parent = parentMap.get(parent, None)
return actionList.reverse()
さらに調べてみると、ループを抜けても actionList はそのまま残っているように見えます。ただし、actionList で reverse() メソッドを使用すると、表示されなくなります。reverse() を間違って使用していますか?