回答編集履歴
2
文章を修正
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Python3に組み込みの`filter`関数はイテレータをを返します。イテレータは一度ループで処理(`for cond in filterd:`)してしまうと巻き戻りが起きないため、その後のループ(`for item in filtered:`)で利用しようとしてもイテレータがさすデータがないことから、ループ処理が行われません。
|
2
2
|
|
3
|
-
今回の場合は、以下のように`filter`関数で帰ってきたイテレータで順次取得できる値をリスト
|
3
|
+
今回の場合は、以下のように`filter`関数で帰ってきたイテレータで順次取得できる値をリストすると良いかと思います。
|
4
4
|
|
5
5
|
``` python
|
6
6
|
filtered = list(filter(lambda n: n['duplicated'] == False, candidates))
|
1
文章を修正
answer
CHANGED
@@ -6,4 +6,4 @@
|
|
6
6
|
filtered = list(filter(lambda n: n['duplicated'] == False, candidates))
|
7
7
|
```
|
8
8
|
|
9
|
-
`finals`のほうは上の`filtered`が動いていないため、空リストとなっています。
|
9
|
+
`finals`のほうは上の`filtered`のループが動いていないため、空リストとなっています。
|