私のコードでは、次のgamelist
ように定義されたネストされたリストがあります
gamelist = [['3'], ['2'], ['1']]
プログラムの目的は、内部リストをスタックとして扱い、小さな要素を大きな要素または空のスタックを含むスタックに追加し、リストを上下にスイープし、移動を繰り返さないことです。理論的には、このゲームは次のようになるはずです。
[['3'], ['2'], ['1']]
[['3'], ['2', '1'], []]
[['3', '1'], ['2'], []]
[['3', '1'], [], ['2']]
リストが最小から最大の順にソートされるまで、以下同様です。
現在の移動を以前の移動と照合するために、各移動の後pastmoves
に のコピーがgamelist
追加された を作成しました。
pastmoves.append(gamelist[:])
だからpastmoves
読むべき
[[['3'], ['2'], ['1']]]
[[['3'], ['2'], ['1'], [['3'], ['2', '1'], []]]
連続する各移動の後など。
私の問題は、ゲームリストがコピーされている間、その中にネストされたリストがコピーされず、pastmoves
2 回の移動後に次のようになることです。
[[['3'], ['2', '1'], []], [['3'], ['2', '1'], []]]
最下位レベルの値もすべてコピーされ、変更として静的なままになるようにしたいと思いgamelist
ます。どうすればそれを達成できますか?