回答編集履歴
1
解説を追記
test
CHANGED
@@ -12,4 +12,28 @@
|
|
12
12
|
|
13
13
|
|
14
14
|
|
15
|
-
これで行けるはずです
|
15
|
+
これで行けるはずです。
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
----
|
20
|
+
|
21
|
+
コードの解説
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
```python
|
26
|
+
|
27
|
+
list(zip([a, b, c], [1, 2, 3]))
|
28
|
+
|
29
|
+
# -> [(a, 1), (b, 2), (c, 3)]
|
30
|
+
|
31
|
+
```
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
zipはこういう風に、2つ以上のイテレータを1つのイテレータに纏める関数です。そして、sum関数はイテレータの要素の総和を求めます。
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
実は、sum関数は文字列(バイト文字列含む)以外ならどのような型でも使えます。多次元リストに使えばflattenのように使えるということです。今回の場合、set型の集合差演算を使って差集合を求め、listに変えてからsumで一次元のリストにしています。
|