回答編集履歴

4

バグ実行例追加

2020/01/22 09:59

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -7,6 +7,42 @@
7
7
  これはバグの元です。
8
8
 
9
9
  これで実装しないといけないとか、ありえないです。
10
+
11
+
12
+
13
+ バグ実行例:
14
+
15
+
16
+
17
+ ```python
18
+
19
+ a = [[]] * 3
20
+
21
+ for i in range(1, 4):
22
+
23
+ a[0].append(i)
24
+
25
+
26
+
27
+ print(a)
28
+
29
+ print(len(a[0]))
30
+
31
+
32
+
33
+ del a[0][0]
34
+
35
+
36
+
37
+ print(a)
38
+
39
+ print(len(a[0]))
40
+
41
+ ```
42
+
43
+
44
+
45
+ うまくいく方法
10
46
 
11
47
 
12
48
 

3

説明追記

2020/01/22 09:59

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -1,3 +1,15 @@
1
+ > a = [[]] * 3
2
+
3
+ として実装しなければいけないです.
4
+
5
+
6
+
7
+ これはバグの元です。
8
+
9
+ これで実装しないといけないとか、ありえないです。
10
+
11
+
12
+
1
13
  既存のリストを変更する方法:
2
14
 
3
15
 

2

インデックスとappendを使う方法を追記

2020/01/22 09:54

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -49,3 +49,39 @@
49
49
  print(len(b[0]))
50
50
 
51
51
  ```
52
+
53
+
54
+
55
+ インデックスとappendを使う方法:
56
+
57
+
58
+
59
+ ```python
60
+
61
+ a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
62
+
63
+ print(a)
64
+
65
+ print(len(a[0]))
66
+
67
+
68
+
69
+ b = []
70
+
71
+ for y in range(len(a)):
72
+
73
+ c = []
74
+
75
+ for x in range(1, len(a[y])):
76
+
77
+ c.append(a[y][x])
78
+
79
+ b.append(c)
80
+
81
+
82
+
83
+ print(b)
84
+
85
+ print(len(b[0]))
86
+
87
+ ```

1

新しいリストを作る方法を追記

2020/01/22 09:52

投稿

shiracamus
shiracamus

スコア5406

test CHANGED
@@ -1,3 +1,7 @@
1
+ 既存のリストを変更する方法:
2
+
3
+
4
+
1
5
  ```python
2
6
 
3
7
  a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
@@ -19,3 +23,29 @@
19
23
  print(len(a[0]))
20
24
 
21
25
  ```
26
+
27
+
28
+
29
+ 新しいリストを作る方法:
30
+
31
+
32
+
33
+ ```python
34
+
35
+ a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
36
+
37
+ print(a)
38
+
39
+ print(len(a[0]))
40
+
41
+
42
+
43
+ b = [row[1:] for row in a]
44
+
45
+
46
+
47
+ print(b)
48
+
49
+ print(len(b[0]))
50
+
51
+ ```