回答編集履歴

5

追記

2021/03/12 03:55

投稿

quickquip
quickquip

スコア11231

test CHANGED
@@ -114,4 +114,6 @@
114
114
 
115
115
  2つ間違いがあって、どちらかだけにしても、全部エラーとエラー箇所のマーカーの位置が同じでした。
116
116
 
117
+ returnの打ち間違いをしたときに内包表記の中にエラーがでるのが予想外でした。
118
+
117
119
  なるほど!

4

追記

2021/03/12 03:55

投稿

quickquip
quickquip

スコア11231

test CHANGED
@@ -21,3 +21,97 @@
21
21
 
22
22
 
23
23
  違うコードになってますね。
24
+
25
+
26
+
27
+ ----
28
+
29
+ 気になったので確認してみました。
30
+
31
+
32
+
33
+
34
+
35
+ 正しい
36
+
37
+ ```
38
+
39
+ >>> def parse(s):
40
+
41
+ return [(x[0], int(x[1:])) for x in s.split(";")]
42
+
43
+ >>>
44
+
45
+ ```
46
+
47
+
48
+
49
+ returnの打ち間違い
50
+
51
+ ```
52
+
53
+ >>> def parse(s):
54
+
55
+ rerutn [(x[0], int(x[1:])) for x in s.split(";")]
56
+
57
+ File "<stdin>", line 1
58
+
59
+ rerutn [(x[0], int(x[1:])) for x in s.split(";")]
60
+
61
+
62
+
63
+ ^
64
+
65
+ SyntaxError: invalid syntax
66
+
67
+ ```
68
+
69
+
70
+
71
+ リスト内包表記の間違い
72
+
73
+ ```
74
+
75
+ >>> def parse(s):
76
+
77
+ return [x[0], int(x[1:]) for x in s.split(";")]
78
+
79
+ File "<stdin>", line 1
80
+
81
+ return [x[0], int(x[1:]) for x in s.split(";")]
82
+
83
+
84
+
85
+ ^
86
+
87
+ SyntaxError: invalid syntax
88
+
89
+ ```
90
+
91
+
92
+
93
+ returnの打ち間違いとリスト内包表記の間違いの両方
94
+
95
+ ```
96
+
97
+ >>> def parse(s):
98
+
99
+ rerutn [x[0], int(x[1:]) for x in s.split(";")]
100
+
101
+ File "<stdin>", line 1
102
+
103
+ rerutn [x[0], int(x[1:]) for x in s.split(";")]
104
+
105
+
106
+
107
+ ^
108
+
109
+ SyntaxError: invalid syntax
110
+
111
+ ```
112
+
113
+
114
+
115
+ 2つ間違いがあって、どちらかだけにしても、全部エラーとエラー箇所のマーカーの位置が同じでした。
116
+
117
+ なるほど!

3

追記

2021/03/12 03:52

投稿

quickquip
quickquip

スコア11231

test CHANGED
@@ -7,3 +7,17 @@
7
7
 
8
8
 
9
9
  書いてあるとおりに打たなかったか、別の箇所を引用してしまったか、実行したと思っているコードが別のコードかのどれかでしょう。
10
+
11
+
12
+
13
+ ----
14
+
15
+
16
+
17
+ 正(コードに書いてある方) `[(x[0],int(x[1:])) for x in s.split(";")]`
18
+
19
+ 誤(エラーに書いてある方) `[x[0],int(x[1:]) for x in s.split(";")]`
20
+
21
+
22
+
23
+ 違うコードになってますね。

2

追記

2021/03/12 03:04

投稿

quickquip
quickquip

スコア11231

test CHANGED
@@ -6,4 +6,4 @@
6
6
 
7
7
 
8
8
 
9
- 別の箇所を引用してしまったか、実行したと思っているコードが別のコードかのどちらかでしょう。
9
+ 書いてあるとおりに打たなかったか、別の箇所を引用してしまったか、実行したと思っているコードが別のコードかのどかでしょう。

1

些細

2021/03/12 02:59

投稿

quickquip
quickquip

スコア11231

test CHANGED
@@ -1,4 +1,4 @@
1
- 書いてあるコードは合っていると思います。
1
+ 書いてあるコードは合っている(正しく動く)と思います。
2
2
 
3
3
  エラーのTracebackに出ているコードが書いてあるコードとは別です。(Tracebackに出ているコードはエラーになるであろうコードです)
4
4