リスト、タプル、セット、辞書

Pythonにおける「リスト(list)」「タプル(tuple)」「セット(set)」「辞書(dict)」は、複数の値を格納・管理するための重要なデータ型(コレクション型)です。それぞれに特徴と用途があり、適切に使い分けることで効率的なプログラムを構築できます。


1. リスト(list)

概要: 複数の要素を順序付きで格納でき、要素の変更(追加・削除・更新)が可能です。
記法: [](角括弧)を使って定義します。

python
fruits = ["apple", "banana", "cherry"] print(fruits[1]) # 出力: banana

主な特徴:

  • 順序あり(インデックスでアクセス可能)

  • ミュータブル(要素の変更可能)

  • 重複した値を許容

操作例:

python
fruits.append("orange") # 要素の追加 fruits.remove("banana") # 要素の削除 fruits[0] = "grape" # 要素の更新

2. タプル(tuple)

概要: リストに似ていますが、**変更不可(イミュータブル)**です。変更の必要がない固定データに使います。
記法: ()(丸括弧)を使って定義します。

python
colors = ("red", "green", "blue") print(colors[2]) # 出力: blue

主な特徴:

  • 順序あり

  • イミュータブル(変更不可)

  • 重複した値を許容

用途:

  • 関数の戻り値(複数値)など

  • セット不可なリストの代替


3. セット(set)

概要: 重複のない要素の集まり。集合演算(和・差・積など)に適しています。
記法: {}(中括弧)を使いますが、空のセットは set() で作成します(空の {} は辞書になるため)。

python
numbers = {1, 2, 3, 3, 4} print(numbers) # 出力: {1, 2, 3, 4}

主な特徴:

  • 順序なし(インデックスアクセス不可)

  • ミュータブル(要素の追加・削除可)

  • 重複を自動的に排除

操作例:

python
numbers.add(5) # 要素追加 numbers.discard(2) # 要素削除

集合演算:

python
a = {1, 2, 3} b = {3, 4, 5} print(a | b) # 和集合: {1, 2, 3, 4, 5} print(a & b) # 積集合: {3}

4. 辞書(dict)

概要: キーと値のペア(key-value)でデータを管理します。マッピング型とも呼ばれます。
記法: {} を使い、キー: 値 の形式で定義します。

python
person = {"name": "Alice", "age": 25} print(person["name"]) # 出力: Alice

主な特徴:

  • キーにより値へアクセス

  • ミュータブル

  • キーはユニーク、値は重複可

操作例:

python
person["age"] = 26 # 値の更新 person["city"] = "Tokyo" # 新しいペアの追加 del person["name"] # ペアの削除

まとめ表

データ型 順序 変更可否 重複許容 主な用途
リスト あり 汎用的な可変長データ
タプル あり 不可 変更されないデータ
セット なし 不可 集合演算、重複排除
辞書 なし(キー基準) キーは不可、値は可 キーによるデータ管理

生成日:2025/05/03