回答編集履歴

1

追記

2017/09/15 12:06

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -25,3 +25,67 @@
25
25
  NameError: name 'a' is not defined
26
26
 
27
27
  ```
28
+
29
+
30
+
31
+ 正しく動作させるためには、返り値を受け取る必要があります。
32
+
33
+ ```Python
34
+
35
+ >>> def func():
36
+
37
+ ... a = 3
38
+
39
+ ... return a
40
+
41
+ ...
42
+
43
+ >>> a = func()
44
+
45
+ >>> print(a)
46
+
47
+ 3
48
+
49
+ ```
50
+
51
+
52
+
53
+ なお、func内のaと外側のaは、名前が同じだけで別物として扱われます。
54
+
55
+ よって、以下のコードはエラーが出ます。
56
+
57
+ ```Python
58
+
59
+ >>> def func():
60
+
61
+ ... a = 3
62
+
63
+ ... return a
64
+
65
+ ...
66
+
67
+ >>> b = func()
68
+
69
+ >>> print(b)
70
+
71
+ 3
72
+
73
+ >>> print(a)
74
+
75
+ Traceback (most recent call last):
76
+
77
+ File "<stdin>", line 1, in <module>
78
+
79
+ NameError: name 'a' is not defined
80
+
81
+ ```
82
+
83
+
84
+
85
+ ---
86
+
87
+ コードはバッククオート三つで括ってください。
88
+
89
+ よくわからない場合は、マークダウン記法について調べてみてください。
90
+
91
+ 特にPythonの場合、インデントが崩れるとコードの意味が変わってきます。