Pythonで辞書をforループするkeysメソッド・valuesメソッド・itemsメソッドの使い方


みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。

非エンジニア&Windowsユーザー向けにPythonで辞書を使った便利な集計ツールの作り方をお伝えしております。

前回の記事はコチラ。

Pythonでリストの値をカウントをする超簡単なプログラム~辞書とは何か、またその使い方
非エンジニア&Windowsユーザーのためのお仕事へのPython活用法お伝えしております。今回は、Pythonの辞書とは何か、また辞書を使ったリストの値のカウントをする超簡単なスクリプトについてです。

リストの値をカウントして辞書にまとめる超簡単な方法をお伝えしました。

今回はその続きで、そのまとめた辞書をループする方法です。

このテクニックも超基本なはずです。

では、Pythonで辞書をforループするkeysメソッド・valuesメソッド・itemsメソッドの使い方です。

行ってみましょう!

スポンサーリンク

前回のおさらい

では、まず前回のおさらいから入ります。

作成したスクリプトはコチラ。

onigiris = ['シャケ', 'ツナ', 'ツナ', 'コンブ', 'シャケ', 'オカカ', 'シャケ', 'ツナ', 'コンブ', 'シャケ']
count = {'シャケ': 0, 'ツナ': 0 ,'コンブ': 0, 'オカカ': 0}
for onigiri in onigiris:
    count[onigiri] +=1
print(count)

リスト内のおにぎりの種類ごとに、何回登場したかをカウントして辞書としてまとめるというスクリプトです。

一応、countという変数に辞書としてまとまっていて、出力すると以下のように中身を見ることができます。

Pythonで辞書をprintする

ですが、実際はこの形式じゃない出力がしたいときもありますよね。

それをforループを使った成し遂げたいというのが、今回のお題になります。

keysメソッド・valuesメソッド・itemsメソッド

辞書に対するループを考える際に、keysメソッド・valuesメソッド・itemsメソッドについては語らざるを得ませんのでお伝えします。

そして、以下のような役割を持ちます。

  • keysメソッド:辞書からキーのリストを表すdict_keysオブジェクトを返す
  • valuesメソッド:辞書から値のリストを表すdict_valuesオブジェクトを返す
  • itemsメソッド:辞書からキーと値のペアのリストを表すdict_itemsオブジェクトを返す

そして、dict_keysオブジェクト、dict_valuesオブジェクト、dict_itemsオブジェクトはいずれもイテレート可能なオブジェクト、つまりforループの対象として使用することができます。

では、それぞれ見ていきましょう。

辞書のキーについてループする

keysメソッドの書式はコチラです。

辞書.keys()

ですから、例えば辞書のキーのリストを表示するのであれば、以下のような命令になります。

for key in count.keys():
    print(key)

これによる出力はコチラです。

Pythonで辞書のキーのリストを出力する

サクっと作れちゃいますね。

辞書の値についてループする

続いて、valuesメソッドです。

辞書.values()

辞書の値についてループするのであれば、以下のような命令になります。

for value in count.values():
    print(value)

実行結果はコチラ。

Pythonで辞書の値のリストを出力する

オッケーですね。

辞書のキーと値のペアについてループする

多分、このパターンが一番便利で使うことが多いかもです。itemsメソッドです。

辞書.items()

itemsメソッドでは、キーと値のペアについて両方を取り出しながらループできまして、以下のように書きます。

for key, value in count.items():
    print('{}: {}'.format(key, value))

実行してみましょう。

Pythonで辞書のキーと値のペアについて出力する

うわ、便利!

まとめ

Pythonで辞書をforループするkeysメソッド・valuesメソッド・itemsメソッドの使い方についてお伝えしました。

  • 辞書のキーや値のリストを表すオブジェクトを取得する方法
  • 辞書についてキーや値、またはそのペアを取り出しながらループをする方法

Pythonのfor文、とても便利ですね!

次回は、辞書のキーが存在するか判定して、なければ新たに追加をする方法をお伝えします。

Pythonで辞書にキーが存在していなければキーと値を新たに追加する方法
初心者&Windowsユーザー向けに、Pythonで辞書を使った集計ツールの作り方です。辞書に指定したキーが存在するかどうかを判定して、存在しなければ辞書のキーとして追加をするという処理を追加します。

どうぞお楽しみに!

連載目次:初心者向けPythonで辞書を使った集計ツールの作り方

Pythonの「辞書」を使うことで、カウントや計算などの集計作業を簡単に行うことができます。本シリーズでは、辞書とは何かというところから実際にcsvファイルを集計するツールを作るところまでを伝えしていきます。

  1. Pythonでリストの値をカウントをする超簡単なプログラム~辞書とは何か、またその使い方
  2. Pythonで辞書をforループするkeysメソッド・valuesメソッド・itemsメソッドの使い方
  3. Pythonで辞書にキーが存在していなければキーと値を新たに追加する方法
  4. Pythonでcsvファイルのデータを辞書データとして集計する簡単なプログラム

タイトルとURLをコピーしました