辞書型オブジェクトとリストの相互変換方法を紹介します。 使いどころとしては、辞書型は順番を保証しないので、並べ替えしたいときなどにリストに変換してソートする、といった場合です。

辞書型からタプルへの変換は、リストとタプルが相互変換可能なので、リストを経由して行います。リストからタプルへの変換は「Python​/リストとタプル」を参照してください。

辞書からリストへ anchor.png Edit

ver2.7なら「items」を使います。

dictData = {'A':'a','B':'b','C':'c'}

print dictData.items()

結果

[('A', 'a'), ('C', 'c'), ('B', 'b')]

辞書型オブジェクトは順番が保証されないので注意が必要です。私のテスト環境ではBとCが入れ替わりました。

ver3ではitemsはイテレータを返すので、さらにリストに変換します。

print(list(dictData.items()))

結果

[('C', 'c'), ('B', 'b'), ('A', 'a')]

辞書のキーのみの配列を得るなら「keys」、値のみの配列なら「values」を使います。 ver2なら以下のようになります。

キーは

print dictData.keys()

結果

['A', 'C', 'B']

値は

print dictData.values()

結果

['a', 'c', 'b']

これらもpython3ではイテレータを返すのでリストに変換する必要があります。

Page Top

リストやタプルから辞書へ anchor.png Edit

「dict」を使います。

listData = [('A', 'a'), ('B', 'b'), ('C', 'c')]

print dict(listData)

結果

{'A': 'a', 'C': 'c', 'B': 'b'}

タプルからの変換も同様です。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom Powered by xpWiki
Counter: 189, today: 4, yesterday: 4
初版日時: 2017-01-05 (木) 22:16:46
最終更新: 2017-01-06 (金) 00:45:19 (JST) (76d) by njf
広告

ログイン

ユーザー名:


パスワード:





パスワード紛失


NJF