前提・実現したいこと
python3で質問です。
L=[[0]*5]*3 #L=[[0,0,0,0,0], [0,0,0,0,0], [0,0,0,0,0]]
L[0][0]=1
print(L)
を実行すると
出力が
[[1,0,0,0,0], [1,0,0,0,0], [1,0,0,0,0]]
となってしまいます。
予想としては
[[1,0,0,0,0], [0,0,0,0,0], [0,0,0,0,0]]
になるかと思ったのですが、なぜこうなってしまったのでしょうか?
L=[[0]*5]*3ではなく
L=[[0,0,0,0,0], [0,0,0,0,0], [0,0,0,0,0]]と記述して実行すると期待した通りになるのですが・・・。
よろしくお願いいたします。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
ソースコード
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/04/16 12:30