アプリケーションで非常に奇妙な結果が得られ続ける理由を理解しようと何時間も苦労してきました。確かに想定されていなかったのに、物事は「オン」になり続けました。次のようなコードセグメントに絞り込みました。
test=[[False]*28]*24
print(test[5][7])
print(test[6][7])
test[5][7]=True
print(test[5][7])
print(test[6][7])
この特定のケースでは、5番目のインデックスの7番目のインデックスの値のみを変更したいのですが、他のさまざまなインデックスも変更されています。これを実行すると、次のようになります。
誤り
誤り
真
真
私が得ることを期待している間:
誤り
誤り
真
誤り
なぜこれが起こっているのか誰かが理解していますか?私は何かを見落としていますか?リストを初期化する方法と関係がありますか?私は本当に24*28のリストをで埋めたいだけですbools = False
。