回答編集履歴
1
誤植修正
answer
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
こんな関数も作れるわけですし。
|
5
5
|
```Python
|
6
6
|
def items(dct):
|
7
|
-
return
|
7
|
+
return dct.items()
|
8
8
|
```
|
9
9
|
|
10
10
|
ドキュメントでは、次のように説明されています。
|
@@ -18,5 +18,43 @@
|
|
18
18
|
|
19
19
|
> また、リスト名と辞書名は独立ではないのになぜメソッドを分けているのでしょうか?
|
20
20
|
|
21
|
+
enumerateは、start引数を指定すれば開始番号を自在に変更できます。
|
22
|
+
```Python
|
23
|
+
>>> enemies = ["スライム", "ドラゴン", "魔王"]
|
24
|
+
>>> for i, enemy in enumerate(enemies, start=100):
|
25
|
+
... print(i, enemy)
|
26
|
+
...
|
27
|
+
100 スライム
|
28
|
+
101 ドラゴン
|
29
|
+
102 魔王
|
30
|
+
```
|
31
|
+
|
21
|
-
|
32
|
+
また、引数がリストでなければいけないというわけでもありません。
|
33
|
+
```Python
|
34
|
+
>>> for i, ch in enumerate('spam'):
|
35
|
+
... print(i, ch)
|
36
|
+
...
|
37
|
+
0 s
|
38
|
+
1 p
|
39
|
+
2 a
|
40
|
+
3 m
|
41
|
+
```
|
42
|
+
|
43
|
+
dict.itemsがインデックスを含んだタプルを返すのは、
|
22
|
-
|
44
|
+
今回たまたまそのようなキーが用いられていたというだけです。
|
45
|
+
```Python
|
46
|
+
>>> enemies = {"弱": "スライム", "中": "ドラゴン", "強": "魔王"}
|
47
|
+
>>> for k, enemy in enemies.items():
|
48
|
+
... print(k, enemy)
|
49
|
+
...
|
50
|
+
弱 スライム
|
51
|
+
中 ドラゴン
|
52
|
+
強 魔王
|
53
|
+
>>>
|
54
|
+
>>> for i, enemy in enumerate(enemies.values()):
|
55
|
+
... print(i, enemy)
|
56
|
+
...
|
57
|
+
0 スライム
|
58
|
+
1 ドラゴン
|
59
|
+
2 魔王
|
60
|
+
```
|