{category}

Python - 集合型

set

セット(データ型

意味 重複しない値の集合


setとは?

セットは、重複しない値を格納するデータ型です。集合演算を行う際に便利です。セットは波括弧{}で囲んで、各要素をカンマ,で区切って表します。

setの具体的な使い方

セットの基本操作

# セットの作成
fruits = {'りんご', 'バナナ', 'オレンジ'}

# 要素の追加
fruits.add('ぶどう')

# 重複要素の追加(無視される)
fruits.add('りんご')

# セットの内容を表示
print("果物セット:", fruits)

# 要素数を表示
print("果物の種類:", len(fruits))

# 要素の存在確認
if 'バナナ' in fruits:
    print("バナナは果物セットに含まれています。")

# 要素の削除
fruits.remove('オレンジ')
print("オレンジを削除後:", fruits)

👇出力結果

果物セット: {'りんご', 'ぶどう', 'バナナ', 'オレンジ'}
果物の種類: 4
バナナは果物セットに含まれています。
オレンジを削除後: {'りんご', 'ぶどう', 'バナナ'}

この例では、セットの作成、要素の追加、重複要素の扱い、要素数の取得、要素の存在確認、要素の削除などの基本的な操作を示しています。セットは重複を許さず、順序も保持しないことに注意してください。

セットの集合演算

# 2つのセットを作成
set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6, 7, 8}

# 和集合(union)
union_set = set1 | set2
print("和集合:", union_set)

# 積集合(intersection)
intersection_set = set1 & set2
print("積集合:", intersection_set)

# 差集合(difference)
difference_set = set1 - set2
print("差集合 (set1 - set2):", difference_set)

# 対称差(symmetric difference)
symmetric_difference_set = set1 ^ set2
print("対称差:", symmetric_difference_set)

👇出力結果

和集合: {1, 2, 3, 4, 5, 6, 7, 8}
積集合: {4, 5}
差集合 (set1 - set2): {1, 2, 3}
対称差: {1, 2, 3, 6, 7, 8}

この例では、2つのセットに対して様々な集合演算を行っています。和集合(両方のセットの全要素)、積集合(両方のセットに共通する要素)、差集合(片方のセットにのみある要素)、対称差(どちらか一方のセットにのみある要素)を示しています。

setに関するよくある質問

Q. セットはなぜ重複を許さないの?
A. セットは数学の集合の概念に基づいており、集合は定義上、同じ要素を複数含みません。これにより、ユニークな要素の集合を簡単に管理できます。
Q. セットと辞書の違いは?
A. セットは値のみを格納し、辞書はキーと値のペアを格納します。セットは重複を許さず、順序も保持しませんが、辞書はキーの重複を許さず、Python 3.7以降は挿入順を保持します。
Q. セットはいつ使うべき?
A. セットは、重複を除去したい場合や、要素の存在確認を高速に行いたい場合に適しています。また、和集合、積集合、差集合などの集合演算を行う際にも便利です。

setが学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Pythonのsetやint、list、str、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


Pythonを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!Pythonはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

int

整数

種類: 数値型

list

変更可能な値の列

種類: シーケンス型

str

文字列

種類: 文字列型

if

もし〜ならば実行

種類: 条件分岐

write

ファイルに書き込む

種類: ファイル操作