(*´ω`)コピーはidentityをひとつにしてしまうため・・・
【実行結果】
【解説】
scores1とscores2があってこの時点ではそれぞれのidentityは異なっている。
ところがscores1 = scores2 とすることによってidentityは同じになってしまう。
そしてscores1[0]に90を代入する。ところがscores2もscores1と同じidentityに
なっているため、指し示すデータはひとつのみ。しったがってscores2[0]も
90になるということだ。
【コード】
#identityの相違がある
scores1 = [80, 40, 50]
scores2 = [80, 40, 50]
scores1 = [80, 40, 50]
scores2 = [80, 40, 50]
print('scores1の先頭要素は{}'.format(scores1[0]))
print('scores2の先頭要素は{}'.format(scores2[0]))
print('scores2の先頭要素は{}'.format(scores2[0]))
#identityのコピー(ここでidentityは同じになってしまう。つまりidentityはひとつになる)
print('変数scores2の中身をscores1に代入(コピー)します')
scores1 = scores2
print('変数scores2の中身をscores1に代入(コピー)します')
scores1 = scores2
#score1[0]を90に変更したがidentityは一つのままになっている
print('scores1の先頭要素を90に書き換えます')
scores1[0] = 90
print('scores1の先頭要素を90に書き換えます')
scores1[0] = 90
#実際2つに見えるが同じidentityを見にいっているので当然同じ内容になってくる
print('90を代入した scores1の先頭要素は{}'.format(scores1[0]))
print('90を代入していない scores2の先頭要素は{}'.format(scores2[0]))
print(' ∧ ∧ モナーはシステム解析家')
print('( ゚Д゚)')
print('海と猫が好き')