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

回答編集履歴

4

追記

2017/12/05 02:57

投稿

LouiS0616
LouiS0616

スコア35680

answer CHANGED
@@ -3,6 +3,7 @@
3
3
  from pprint import pprint
4
4
 
5
5
  field = [['N' for _ in range(8)] for _ in range(8)]
6
+ # field = [list('N' * 8) for _ in range(8)] # これでも可
6
7
  field[3][3] = 'W'
7
8
  field[3][4] = 'B'
8
9
  field[4][3] = 'B'

3

追記

2017/12/05 02:57

投稿

LouiS0616
LouiS0616

スコア35680

answer CHANGED
@@ -25,4 +25,20 @@
25
25
  原因
26
26
  ---
27
27
  Pythonで非常によく見る失敗例です。
28
- [Qiita - Python のリストの扱いで注意すること](https://qiita.com/utgwkk/items/5ad2527f19150ae33322)
28
+ [Qiita - Python のリストの扱いで注意すること](https://qiita.com/utgwkk/items/5ad2527f19150ae33322)
29
+
30
+ ご提示のコードの末尾でidを見てみると理由は明白です。
31
+ **註: 実行時によって結果は異なります。しかし、全てのidが揃うのは間違いないです。**
32
+ ```Python
33
+ >>> for row in big_list:
34
+ ... print(id(row))
35
+ ...
36
+ 2009502115080
37
+ 2009502115080
38
+ 2009502115080
39
+ 2009502115080
40
+ 2009502115080
41
+ 2009502115080
42
+ 2009502115080
43
+ 2009502115080
44
+ ```

2

リンクの変更

2017/12/05 02:55

投稿

LouiS0616
LouiS0616

スコア35680

answer CHANGED
@@ -25,4 +25,4 @@
25
25
  原因
26
26
  ---
27
27
  Pythonで非常によく見る失敗例です。
28
- [公式FAQ](https://docs.python.jp/3/faq/programming.html#how-do-i-create-a-multidimensional-list)にもそれに関する記述があります。
28
+ [Qiita - Python のリストの扱いで注意すること](https://qiita.com/utgwkk/items/5ad2527f19150ae33322)

1

追記

2017/12/05 02:51

投稿

LouiS0616
LouiS0616

スコア35680

answer CHANGED
@@ -1,3 +1,4 @@
1
+ こんな感じですかね。
1
2
  ```Python
2
3
  from pprint import pprint
3
4
 
@@ -19,4 +20,9 @@
19
20
  ['N', 'N', 'N', 'N', 'N', 'N', 'N', 'N'],
20
21
  ['N', 'N', 'N', 'N', 'N', 'N', 'N', 'N']]
21
22
  """
22
- ```
23
+ ```
24
+
25
+ 原因
26
+ ---
27
+ Pythonで非常によく見る失敗例です。
28
+ [公式FAQ](https://docs.python.jp/3/faq/programming.html#how-do-i-create-a-multidimensional-list)にもそれに関する記述があります。