前提・実現したいこと
pythonでリスト型のデータをオブジェクトにして、データを変えてオブジェクトをリスト化したいのですが
リスト部分が最後のデータにすべて書き換わってしまいます。
領域が取れてないからだと思うのですがどうすればよいかわかりません。
よろしくお願いします。
発生している問題・エラーメッセージ
結果
途中データ
x 0 data [0,1,2,3,4]
x 1 data [1,2,3,4,5]
x 2 data [2,3,4,5,6]
最終リスト
0 [2,3,4,5,6]
1 [2,3,4,5,6]
2 [2,3,4,5,6]
途中データを最終リストに入れたい
エラーメッセージ
該当のソースコード
python ソースコード data = list() datalist = list() class TestData: def __init__(self,x,data): self.x = x self.data = data クラスここまで 途中データ for i in range(3): data.clear() for j in range(5): data.append(i+j) a = TestData(i,data) #object化 datalist.append(a) #objectをリストに追加 print('x',a.x,'data',a.data) 結果リスト for l in datalist: print(l.x,' ' ,l.data) ### 試したこと ここに問題に対して試したことを記載してください。 ### 補足情報(FW/ツールのバージョンなど)windows10 ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/03/14 08:42