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

回答編集履歴

2

修正

2018/02/13 15:39

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -18,7 +18,7 @@
18
18
  enemy_sum = get_sum(hand)
19
19
  ```
20
20
 
21
- ↑ 実引数と仮引数の名前が同じでないといけないと、こんなことになる
21
+ ↑ 実引数と仮引数の名前が同じでないといけないと、こんなことになる
22
22
  ↓ 実際は汎用的に関数を使える
23
23
 
24
24
  ```Python

1

追記

2018/02/13 15:39

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -7,7 +7,28 @@
7
7
 
8
8
  関数は汎用的に使えることがしばしば要求されます。
9
9
  もし実引数名が仮引数と一致しなければならないのなら、非常に使いづらいと思いませんか。
10
+ ```Python
11
+ player_hand = [1, 2, 3, 4, 5]
12
+ enemy_hand = [2, 4, 6, 8, 0]
10
13
 
14
+ hand = player_hand
15
+ player_sum = get_sum(hand)
16
+
17
+ hand = enemy_hand
18
+ enemy_sum = get_sum(hand)
19
+ ```
20
+
21
+ ↑ 実引数と仮引数の名前が同じでないといけないと、こんなことになる。
22
+ ↓ 実際は汎用的に関数を使える
23
+
24
+ ```Python
25
+ player_hand = [1, 2, 3, 4, 5]
26
+ enemy_hand = [2, 4, 6, 8, 0]
27
+
28
+ player_sum = get_sum(player_hand)
29
+ enemy_sum = get_sum(enemy_hand)
30
+ ```
31
+
11
32
  ---
12
33
  > ≪2≫
13
34
  ①ではplayer_sum~という変数を1行多く書き加えられているのですが、②のように直接入れた方がシンプルで判りやすいのではないのかなと感じました。
@@ -17,4 +38,13 @@
17
38
  > ①の模範解答のように書く理由(メリット)は何なのでしょうか?
18
39
 
19
40
  その後再利用することを見越しているのかもしれません。
41
+ ```Python
42
+ player_sum = get_sum(player_hand)
43
+ print('リストの合計は', player_sum)
44
+
45
+ if player_sum >= 20:
46
+ print('Great!')
47
+ ```
48
+
20
- あるいは、**説明変数**(意味を明確にする目的で設けられる変数)としての役割を期待しているのかも。
49
+ あるいは、**説明変数**(意味を明確にする目的で設けられる変数)としての役割を期待しているのかも。
50
+ これくらいの小さなプログラムじゃ利益はあんまり感じられませんが。