Serviceを読んで理解し、同意したものとみなします。スタック・オーバーフローはプログラマーとプログラミングに熱心な人のためのQ&Aサイトです。140件1pythonを使い、数字を順番通りにならべかえるゲームを作っています。terminalで表示して遊べるところまではできたのですが、ソースコードにも書いているrandom.shuffle(list1)を使ってしまうと、本当に数字がランダムにシャッフルされてしまい、元どおりにならべかえることが難しくなってしまうゲームになっています。現在、12345678と右下に1マス空け、上下左右ランダムに10回ほど動いてからゲームを開始するというプログラムを書きたいのですが、これをどうやればいいか悩んでいます。教えていただけると幸いです。「数字を並び替えるゲーム」だと色々あるので......。票4質問文のソースコードには「与えられた方向にコマを動かす」という部分の処理が既にあるので、ここを関数化した上で、「与えられた方向」をランダムに決めてコマを動かす処理を10回繰り返せば良さそうです。そのままだと動かせない場合があるので、動かせた場合だけ数えるようにします。具体的には、ちょっと雑ですがたとえば下のように書けます。あるコマを空白へ移動する関数。n回シャッフルする関数。関数として機能を切り出すと、プレイヤーにコマを動かしてもらうところも下のように簡潔になります。again.')以下おまけです。関数の引数として小さめの数を渡すとデバッグしやすいです。っぽく書くにはクラスを使いたいところですね。ところで今のソースコードだと8パズルの1手を決める際「○番のコマを空白へ動かす」と考えていますが、逆に「空白部分を×方向に動かす」と考えることもできます。8パズルくらいだと前者の考え方でもシャッフルはたいてい高速に終わるので問題ありませんが、コマの数が増えてくると後者の方が「動かせない」状態に陥る確率が低く、シャッフルがすぐ終わるようになります。|28パズルの駒は偶奇性があって、ルール通りの動かし方をする限り偶数パリティな状態から奇数パリティな状態には絶対にならないことが証明されています。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。関連する質問0Python-pandasの階層型インデックスにおいて、親子関係を保ったまま親をシャッフルすることはできるのでしょうか。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。