teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

追記

2017/02/04 07:03

投稿

kiritsugu
kiritsugu

スコア127

answer CHANGED
@@ -2,4 +2,15 @@
2
2
  つまり同じオブジェクトを参照しているのです。
3
3
  li3.append(li2)というのはli.append(li2)というのと同じ意味です。
4
4
  同じオブジェクトを参照しているのですから当然どちらも変わりますよ。
5
- 重要なのはコピーではなく参照しているということです
5
+ 重要なのはコピーではなく参照しているということです
6
+
7
+ もしコピーしたいというのであれば、このようにすればおkです
8
+ ```python
9
+ li = [1,2]
10
+ li2 = [3,4]
11
+ li3 = li[:]
12
+ li3.append(li2)
13
+
14
+ print(li)
15
+ print(li3)
16
+ ```

1

追記

2017/02/04 07:02

投稿

kiritsugu
kiritsugu

スコア127

answer CHANGED
@@ -1,4 +1,5 @@
1
1
  li3=liというのはliが見ているものをli3も見るということです。
2
2
  つまり同じオブジェクトを参照しているのです。
3
3
  li3.append(li2)というのはli.append(li2)というのと同じ意味です。
4
- 同じオブジェクトを参照しているのですから当然どちらも変わりますよ。
4
+ 同じオブジェクトを参照しているのですから当然どちらも変わりますよ。
5
+ 重要なのはコピーではなく参照しているということです