回答編集履歴
2
修正
answer
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
> 初期化処理(test_list = []とhoge_list = [])の箇所をコメントアウトしても何もエラーが出ません。本当に書くべき必要があるものなのでしょうか?
|
2
2
|
|
3
|
+
次のような理由です。
|
3
|
-
|
4
|
+
ブロック内に処理が進まなかったときに NameError が発生します。
|
4
5
|
```Python
|
5
6
|
>>> lst = []
|
6
7
|
>>>
|
1
修正
answer
CHANGED
@@ -22,4 +22,8 @@
|
|
22
22
|
Traceback (most recent call last):
|
23
23
|
File "<stdin>", line 1, in <module>
|
24
24
|
NameError: name 'dst' is not defined
|
25
|
-
```
|
25
|
+
```
|
26
|
+
|
27
|
+
**追記:**
|
28
|
+
うっかりfor文の例を挙げてしまいましたが、事情は同じです。
|
29
|
+
ブロック内で変数を宣言する場合は、常に『ブロックに入らなかった場合』を考慮する必要があります。
|