私は辞書を持っています
Dict = {'ALice':1, 'in':2, 'Wonderland':3}
キー値を返す方法は見つかりましたが、キー名を返す方法はありませんでした。
たとえば、Pythonに辞書のキー名を段階的に(forループで)返してもらいたい:
Alice
in
Wonderland
私は辞書を持っています
Dict = {'ALice':1, 'in':2, 'Wonderland':3}
キー値を返す方法は見つかりましたが、キー名を返す方法はありませんでした。
たとえば、Pythonに辞書のキー名を段階的に(forループで)返してもらいたい:
Alice
in
Wonderland
使用できます.keys()
:
for key in your_dict.keys():
print key
または単に辞書を反復処理します。
for key in your_dict:
print key
辞書は順序付けられていないことに注意してください。結果のキーは、ややランダムな順序で表示されます。
['Wonderland', 'ALice', 'in']
順序が気になる場合は、順序付けされたリストを使用することで解決できます。
sort_of_dict = [('ALice', 1), ('in', 2), ('Wonderland', 3)]
for key, value in sort_of_dict:
print key
これで、目的の結果が得られます。
>>> sort_of_dict = [('ALice', 1), ('in', 2), ('Wonderland', 3)]
>>>
>>> for key, value in sort_of_dict:
... print key
...
ALice
in
Wonderland
def enumdict(listed):
myDict = {}
for i, x in enumerate(listed):
myDict[x] = i
return myDict
indexes = ['alpha', 'beta', 'zeta']
print enumdict(indexes)
プリント: {'アルファ': 0, 'ベータ': 1, 'ゼータ': 2}
編集:dictを順序付けしたい場合は、ordereddictを使用してください。
dict には keys() メソッドがあります。
Dict.keys() はキーのリストを返すか、反復子メソッド iterkeys() を使用します。