質問編集履歴

5

修正

2020/07/22 05:14

投稿

yu3aw
yu3aw

スコア0

test CHANGED
File without changes
test CHANGED
@@ -16,33 +16,7 @@
16
16
 
17
17
 
18
18
 
19
- ### 発生している問題・エラーメッセージ
20
19
 
21
-
22
-
23
-
24
-
25
- デックを上書きしたのに(リストは上書きしてないのに)
26
-
27
- リストが勝手に上書きされてる謎現象に困っています。
28
-
29
-
30
-
31
- プログラムの実行順は順次処理なので今回のようにリストが勝手に上書きされるのは間違いだと思うのですが、、、、。
32
-
33
-
34
-
35
-
36
-
37
- 以下が実行結果になります
38
-
39
- ```
40
-
41
- List=[{'key': 0}]
42
-
43
- List=[{'key': 20}]
44
-
45
- ```
46
20
 
47
21
 
48
22
 
@@ -75,6 +49,42 @@
75
49
  print(f"List={List}")
76
50
 
77
51
  ```
52
+
53
+
54
+
55
+ ### 発生している問題・エラーメッセージ
56
+
57
+
58
+
59
+
60
+
61
+ 以下が実行結果になります
62
+
63
+ ```
64
+
65
+ List=[{'key': 0}]
66
+
67
+ List=[{'key': 20}]
68
+
69
+ ```
70
+
71
+
72
+
73
+
74
+
75
+ デックを上書きしたのに(リストは上書きしてないのに)
76
+
77
+ リストが勝手に上書きされてる謎現象に困っています。
78
+
79
+
80
+
81
+ プログラムの実行順は順次処理なので今回のようにリストが勝手に上書きされるのは間違いだと思うのですが、、、、。
82
+
83
+
84
+
85
+
86
+
87
+
78
88
 
79
89
 
80
90
 

4

修正

2020/07/22 05:14

投稿

yu3aw
yu3aw

スコア0

test CHANGED
File without changes
test CHANGED
@@ -31,8 +31,6 @@
31
31
  プログラムの実行順は順次処理なので今回のようにリストが勝手に上書きされるのは間違いだと思うのですが、、、、。
32
32
 
33
33
 
34
-
35
- 例えるなら、変数aしか上書きしてないのに変数aとbどちらも上書きされる現象です
36
34
 
37
35
 
38
36
 

3

修正

2020/07/22 05:11

投稿

yu3aw
yu3aw

スコア0

test CHANGED
@@ -1 +1 @@
1
- listをdequeから作った時、勝手に上書きされる謎現象(順次処理が成り立ってない現象)
1
+ listをdequeから作った時、勝手に上書きされる謎現象(順次処理が成り立ってないような現象)
test CHANGED
File without changes

2

修正

2020/07/22 05:05

投稿

yu3aw
yu3aw

スコア0

test CHANGED
@@ -1 +1 @@
1
- listをdequeから作った時、勝手に上書きされる謎現象
1
+ listをdequeから作った時、勝手に上書きされる謎現象(順次処理が成り立ってない現象)
test CHANGED
@@ -25,6 +25,10 @@
25
25
  デックを上書きしたのに(リストは上書きしてないのに)
26
26
 
27
27
  リストが勝手に上書きされてる謎現象に困っています。
28
+
29
+
30
+
31
+ プログラムの実行順は順次処理なので今回のようにリストが勝手に上書きされるのは間違いだと思うのですが、、、、。
28
32
 
29
33
 
30
34
 
@@ -92,9 +96,25 @@
92
96
 
93
97
 
94
98
 
95
- 本来なら下記のような挙動になって欲しいのですがdequeを使うと上記の謎現象が起きていて且つその理由も分からず困っているわけです
99
+ 本来なら下記の結果になって欲しいのです
96
100
 
97
101
 
102
+
103
+ ```
104
+
105
+ List=[{'key': 0}]
106
+
107
+ List=[{'key': 0}]
108
+
109
+ ```
110
+
111
+
112
+
113
+
114
+
115
+
116
+
117
+ ↓もっと分かりやすい例で例えると、下記のような挙動になって欲しいのです
98
118
 
99
119
  ```
100
120
 

1

追加

2020/07/22 05:01

投稿

yu3aw
yu3aw

スコア0

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,17 @@
2
2
 
3
3
 
4
4
 
5
- listをdequeから作った時、勝手に上書きされる謎現象を解決したい
5
+ listをdequeから作った時、勝手に上書きされる謎現象を解決したい
6
+
7
+
8
+
9
+ 解決したいこと1つ目 → dequeだけを上書きしてlistは上書きされないようにしたい
10
+
11
+
12
+
13
+ 解決したいこと2つ目 → なぜdequeしか上書きしてないのにlistも上書きされるのかその原理を知りたい
14
+
15
+
6
16
 
7
17
 
8
18
 
@@ -77,3 +87,47 @@
77
87
  この勝手に上書きされてる現象に頭を悩ませているので何とか解決したいです。
78
88
 
79
89
  どなたかご教授お願いいたします。
90
+
91
+
92
+
93
+
94
+
95
+ 本来なら下記のような挙動になって欲しいのですがdequeを使うと上記の謎現象が起きていて且つその理由も分からず困っているわけです
96
+
97
+
98
+
99
+ ```
100
+
101
+ a = 1
102
+
103
+
104
+
105
+ b = a
106
+
107
+
108
+
109
+ print(f"b={b}")
110
+
111
+
112
+
113
+ a = 2
114
+
115
+
116
+
117
+ print(f"b={b}")
118
+
119
+
120
+
121
+ ```
122
+
123
+
124
+
125
+ 結果
126
+
127
+ ```
128
+
129
+ b=1
130
+
131
+ b=1
132
+
133
+ ```