カテゴリ: Python 更新日: 2025/12/18

Pythonの辞書をリストに変換する方法!list()・items()・zip()の活用法

Pythonの辞書をリストに変換する方法!list()・items()・zip()の活用法
Pythonの辞書をリストに変換する方法!list()・items()・zip()の活用法

先生と生徒の会話形式で理解しよう

生徒

「Pythonの辞書って、リストに変換することってできますか?」

先生

「はい、Pythonの辞書は簡単にリストに変換できますよ。使うのはlist()items()、あとzip()という関数です。」

生徒

「それぞれどういう使い方をするんですか?できればわかりやすく教えてください!」

先生

「もちろんです。順番に説明していきましょう!」

1. Pythonの辞書とは?

1. Pythonの辞書とは?
1. Pythonの辞書とは?

まずは辞書の基本から。辞書は「キー」と「値」の組み合わせでデータを管理する箱のようなものです。

例えば、果物の名前をキーにして、その数を値にするようなイメージです。


fruits = {"りんご": 3, "バナナ": 5, "みかん": 2}
print(fruits["りんご"])  # 3が表示される

このように、辞書は特定のキーに対応する値を取り出すことができます。

2. list()で辞書のキーや値をリストに変換する

2. list()で辞書のキーや値をリストに変換する
2. list()で辞書のキーや値をリストに変換する

list()は「リストに変換する」関数です。辞書に使うと、辞書のキーや値をリストに変えられます。

例えば、辞書のキーだけをリストにしたいときはこうします。


fruits = {"りんご": 3, "バナナ": 5, "みかん": 2}

keys_list = list(fruits.keys())  # キーをリストに
print(keys_list)

['りんご', 'バナナ', 'みかん']

同じように値だけをリストにしたいときは、values()を使います。


values_list = list(fruits.values())  # 値をリストに
print(values_list)

[3, 5, 2]

3. items()で辞書のキーと値をタプルのリストに変換する

3. items()で辞書のキーと値をタプルのリストに変換する
3. items()で辞書のキーと値をタプルのリストに変換する

items()は、辞書の「キー」と「値」のペアをまとめて取り出すメソッドです。これをリストに変えると、キーと値がセットになったリストが作れます。


items_list = list(fruits.items())
print(items_list)

[('りんご', 3), ('バナナ', 5), ('みかん', 2)]

ここで出てくる('りんご', 3)のようなものは「タプル」と呼ばれます。タプルは変更できないリストのようなもので、複数の値をひとまとめにするのに使います。

4. zip()でリストから辞書を作ったり逆に分解したりする

4. zip()でリストから辞書を作ったり逆に分解したりする
4. zip()でリストから辞書を作ったり逆に分解したりする

zip()は複数のリストをまとめてペアにする関数です。逆に、辞書のキーと値を分けてリストにしたいときにも使えます。

例えば、キーのリストと値のリストから辞書を作るときはこうします。


keys = ["りんご", "バナナ", "みかん"]
values = [3, 5, 2]

fruits_dict = dict(zip(keys, values))
print(fruits_dict)

{'りんご': 3, 'バナナ': 5, 'みかん': 2}

逆に辞書からキーと値のリストを作るときは、zip(*dict.items())のように書きます。


keys_list, values_list = zip(*fruits_dict.items())
print(list(keys_list))
print(list(values_list))

['りんご', 'バナナ', 'みかん']
[3, 5, 2]

5. 重要なポイント

5. 重要なポイント
5. 重要なポイント

・辞書は「キー」と「値」のペアでデータを管理する。
list()は辞書のキーや値をリストに変換できる。
items()は辞書のキーと値のペアを取り出して、リストにできる。
zip()は複数のリストをまとめてペアにしたり、辞書のキーと値を分解したりできる。
・辞書とリストはデータを扱う上でとてもよく使うので、この変換はよく覚えておくと便利です。

まとめ

まとめ
まとめ

Pythonの辞書とリスト変換を通して理解した全体像

この記事では、Pythonの辞書をリストに変換する方法として、list()、items()、zip()という三つの代表的な手法を学んできました。 Pythonにおいて辞書とリストは、最も頻繁に使われるデータ構造の一つであり、この二つを自由に行き来できるようになることは、初心者から一歩成長するための重要なポイントです。 辞書はキーと値の組み合わせでデータを管理するのに優れており、リストは順番を持ったデータの集まりとして扱いやすい特徴があります。 それぞれの強みを理解し、場面に応じて変換できるようになることで、プログラムの表現力は大きく広がります。

まずlist()を使った変換では、辞書のキーだけ、あるいは値だけをシンプルにリストとして取り出す方法を確認しました。 keys()やvalues()と組み合わせることで、辞書の中身を一覧として扱えるようになります。 これは、画面表示用のデータを作成したり、ループ処理で順番に処理したりするときによく使われる基本的なテクニックです。 Python初心者にとっても直感的で理解しやすく、最初に覚えておきたい方法と言えるでしょう。

次にitems()を使った方法では、キーと値をセットにしたタプルのリストを作成しました。 この形式は、辞書の中身をそのまま別の形で扱いたい場合に非常に便利です。 例えば、キーと値を同時に処理したい場合や、データを別の構造に変換する前段階としてよく使われます。 タプルは変更できないデータ型であるため、誤って値を書き換えてしまう心配が少ない点も特徴です。

zip()を使った応用的な変換の考え方

zip()は少し応用的ですが、理解できると非常に強力な関数です。 複数のリストを一つずつ組み合わせてペアを作ることができるため、キーのリストと値のリストから辞書を作成する場面で活躍します。 また、zipとitemsを組み合わせることで、辞書のキーと値をそれぞれ別のリストに分解することも可能でした。 このような変換は、データ分析や前処理、ファイル出力など、少し実践的な処理で頻繁に登場します。

辞書とリストの変換を自在に行えるようになると、「どのデータ構造で持つのが一番分かりやすいか」を考えられるようになります。 これはPythonプログラミングにおいてとても重要な視点です。 無理に一つのデータ構造にこだわるのではなく、処理内容に合わせて柔軟に変換することで、コードは読みやすく、保守しやすくなります。

まとめとしてのサンプルプログラム

ここで、今回学んだ辞書とリストの変換をまとめて確認できるサンプルプログラムを見てみましょう。 list()、items()、zip()の基本的な使い方が一通り含まれています。


scores = {"国語": 80, "数学": 90, "英語": 85}

# キーと値をそれぞれリストに変換
subjects = list(scores.keys())
points = list(scores.values())

# キーと値のペアをリストで取得
pairs = list(scores.items())

# zipを使って再び辞書を作成
new_scores = dict(zip(subjects, points))

print(subjects)
print(points)
print(pairs)
print(new_scores)

このように、辞書とリストの変換を理解しておくことで、データの扱い方に迷うことが少なくなります。 Pythonの基本文法として、ぜひ何度も手を動かして確認してみてください。

先生と生徒の振り返り会話

生徒

「辞書ってそのまま使うだけじゃなくて、リストに変換するとできることが増えるんですね。 今まで何となく使っていましたが、考え方が整理できました。」

先生

「それはとても良い気付きです。 辞書とリストはPythonの基本なので、変換の仕方を理解すると一気に応用が効くようになります。」

生徒

「itemsやzipは少し難しかったですが、使いどころが分かると便利ですね。」

先生

「最初は難しく感じますが、実際にデータを動かしてみると理解が深まります。 慣れてくると自然に使えるようになりますよ。」

生徒

「これからは、辞書とリストをどう変換するかを考えながらコードを書いてみます。」

先生

「それができるようになれば、Pythonの基礎はかなり身についています。 今日学んだ内容をしっかり復習して、次のステップにつなげていきましょう。」

カテゴリの一覧へ
新着記事
New1
Django
Djangoプロジェクトのディレクトリ構造を完全解説!初心者でも迷わないフォルダの見方
New2
Flask
Flask×Flask-SocketIOでチャットアプリを作る流れを初心者向けにやさしく解説
New3
Flask
Flaskアプリの作り方を基礎から学ぼう!初心者が覚えるべき開発の流れとは?
New4
Flask
Flask-WTFでファイルアップロードフォームを完全ガイド!初心者でもわかる画像やPDFのアップロード方法
人気記事
No.1
Java&Spring記事人気No1
Django
Django環境構築の全手順を完全解説!初心者でも迷わないPython・Djangoセットアップガイド
No.2
Java&Spring記事人気No2
Flask
Flask-Loginでユーザー認証を完全ガイド!初心者でもわかるログイン処理の作り方
No.3
Java&Spring記事人気No3
Python
Pythonの文字列を1文字ずつ処理する方法!for文やlist化の活用例
No.4
Java&Spring記事人気No4
Python
PythonでHello Worldを表示するには?初心者向けに最初の1行を実行してみよう
No.5
Java&Spring記事人気No5
Python
Pythonで定数を定義する方法!変更されない変数の書き方と命名ルールを初心者向けに解説
No.6
Java&Spring記事人気No6
Python
Pythonでリストを文字列に変換する方法を完全ガイド!初心者でもわかるjoinの使い方
No.7
Java&Spring記事人気No7
Flask
FlaskアプリをNginx + Gunicornで本番運用する方法!初心者でもわかるデプロイ構成の基本
No.8
Java&Spring記事人気No8
Python
Pythonのmatch文(パターンマッチング)とは?switch文の代替としての使い方をやさしく解説