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

回答編集履歴

5

コード修正

2021/11/25 12:57

投稿

退会済みユーザー
answer CHANGED
@@ -30,7 +30,7 @@
30
30
 
31
31
  ### 修正版
32
32
 
33
- `reducerFunc` の第一引数`acc`の第二要素を、(目的のリストになる)第一要素のリストの最後の要素である子リストが含む数値の合計に修正しました。また、`acc[i]` や `cur[i]` だと分かりにくいので、各々何の値を保持しているかが分かるような変数に代入しました。
33
+ `reducerFunc` の第一引数`acc`の第二要素を、(目的のリストになる)第一要素のリストの最後の要素である子リストが含む数値の合計に修正しました。また、`acc[i]` や `cur[i]` だと分かりにくいので、`acc`と`cur`をアンパックして、各々何の値を保持しているかが分かるような変数に代入しました。
34
34
 
35
35
  ```python3
36
36
  from functools import reduce

4

コード修正

2021/11/25 12:57

投稿

退会済みユーザー
answer CHANGED
@@ -30,7 +30,7 @@
30
30
 
31
31
  ### 修正版
32
32
 
33
- `reducerFunc` の第一引数`acc`の第二要素を、目的のリストである第一要素の数値リストの最後子リストまれる数値の合計に修正しました。また、`acc[i]` や `cur[i]` だと分かりにくいので、各々、何の値を保持しているかが分かるような変数に代入しました。
33
+ `reducerFunc` の第一引数`acc`の第二要素を、(目的のリストにな)第一要素のリストの最後の要素である子リスト数値の合計に修正しました。また、`acc[i]` や `cur[i]` だと分かりにくいので、各々、何の値を保持しているかが分かるような変数に代入しました。
34
34
 
35
35
  ```python3
36
36
  from functools import reduce

3

コード修正

2021/11/25 12:47

投稿

退会済みユーザー
answer CHANGED
@@ -30,7 +30,7 @@
30
30
 
31
31
  ### 修正版
32
32
 
33
- `reducerFunc` の第引数を、数値リストのの要素である子リストに含まれる数値の合計に修正しました。また、`acc[i]` や `cur[i]` だと分かりにくいので、各々、何の値を保持しているかが分かるような変数に代入しました。
33
+ `reducerFunc` の第引数`acc`の第二要素を、目的のリストである第一要素の数値リストの最後尾子リストに含まれる数値の合計に修正しました。また、`acc[i]` や `cur[i]` だと分かりにくいので、各々、何の値を保持しているかが分かるような変数に代入しました。
34
34
 
35
35
  ```python3
36
36
  from functools import reduce

2

テキスト修正

2021/11/25 12:43

投稿

退会済みユーザー
answer CHANGED
@@ -30,7 +30,7 @@
30
30
 
31
31
  ### 修正版
32
32
 
33
- `reducerFunc` の第二引数を、数値リストの末尾の要素である子リストに含まれる数値の合計に修正しました。
33
+ `reducerFunc` の第二引数を、数値リストの末尾の要素である子リストに含まれる数値の合計に修正しました。また、`acc[i]` や `cur[i]` だと分かりにくいので、各々、何の値を保持しているかが分かるような変数に代入しました。
34
34
 
35
35
  ```python3
36
36
  from functools import reduce

1

コード修正

2021/11/25 11:44

投稿

退会済みユーザー
answer CHANGED
@@ -25,4 +25,39 @@
25
25
  ```
26
26
 
27
27
  出力結果:
28
+ > [['あ', 'い'], ['う', 'え', 'お'], ['か', 'き', 'く'], ['け', 'こ']]
29
+
30
+
31
+ ### 修正版
32
+
33
+ `reducerFunc` の第二引数を、数値リストの末尾の要素である子リストに含まれる数値の合計に修正しました。
34
+
35
+ ```python3
36
+ from functools import reduce
37
+
38
+
39
+ def reducerFunc(acc, cur):
40
+ key_lists, temp_total = acc
41
+ key, value = cur
42
+
43
+ if temp_total >= 5:
44
+ key_lists.append([key])
45
+ temp_total = value
46
+ else:
47
+ key_lists[-1].append(key)
48
+ temp_total += value
49
+
50
+ return key_lists, temp_total
51
+
52
+
53
+
54
+ dic2 = {"あ":2,"い":3,"う":1,"え":3,"お":3,"か":2,"き":1,"く":2,"け":2,"こ":3}
55
+
56
+ result = reduce(reducerFunc, dic2.items(), ([[]], 0))[0]
57
+
58
+ print(result)
59
+
60
+
61
+ ```
62
+ 出力結果:
28
63
  > [['あ', 'い'], ['う', 'え', 'お'], ['か', 'き', 'く'], ['け', 'こ']]