set(セット)の使い方【Python】
こんにちは、クルトンです!
この記事ではset(セット)の使い方を解説します。
setとは
setは集合を扱うために作られたオブジェクトです。
setの最大の特徴は重複する要素が存在しないことです。
また、setはlistやdictionaryと違い、インデックス番号やキーによって要素を指定することができません。
では早速、具体的な使い方を見ていきましょう!
setの使い方
{要素, 要素, 要素, ...}
このように、setは波括弧「{}」の間に要素をコンマ「,」で区切って並べることで定義できます。
ただし、要素がないときに、波括弧だけを使って定義しようとすると、dictionary(辞書)として定義されてしまうので注意してください。
空のsetを定義したいときは、set関数を使います。
set()
setを使った集合演算
ここからは
集合A:{1, 2, 3}
集合B:{3, 4, 5}
を例として、setを使った集合演算を説明します。
setの和集合
AとBの二つの集合のうち、どちらかに属している要素の集合を「AとBの和集合」といいます。
setの和集合は|演算子を使うことで得ることができます。
コード
A = {1, 2, 3} B = {3, 4, 5} print(A | B)
出力結果
{1, 2, 3, 4, 5}
setの差集合
Aには属するが、Bには属さない要素の集合を「AからBを引いた差集合」といいます。
setの差集合は-演算子を使うことで得ることができます。
コード
A = {1, 2, 3} B = {3, 4, 5} print(A - B)
出力結果
{1, 2}
setの積集合
AにもBにも属する要素の集合を「AとBの積集合」といいます。
setの積集合は&演算子を使うことで得ることができます。
コード
A = {1, 2, 3} B = {3, 4, 5} print(A & B)
出力結果
{3}
setの対称差
AとBの積集合だけを除いた要素の集合を「AとBの対称差」といいます。
setの積集合は^演算子を使うことで得ることができます。
コード
A = {1, 2, 3} B = {3, 4, 5} print(A ^ B)
出力結果
{1, 2, 4, 5}
setとin演算子
setはin演算子を使うことで要素を検索することができます。
コード
S = {1, 2, 3} print(1 in S) # 1はSの中に存在するため、Trueが出力される print(0 in S) # 0はSの中に存在しないため、Falseが出力される
出力結果
True False
setと比較演算子
比較演算子を使うことで、ある集合がもう一つの集合の部分集合、もしくは上位集合であるかどうかを調べることができます。
AがBの部分集合であるときは「A <= B」がTrueとなり、AがBの上位集合であるときは「A >= B」がTrueとなります。
コード
#AはBの部分集合であり、BはAの上位集合である A = {1, 3, 5} B = {1, 2, 3, 4, 5} print(A <= B) print(B >= A)
出力結果
True True
setとfor文
setはfor文を使って要素を取り出すことができます。
for文の使い方は下の記事で詳しく説明しています。
コード
S = {1, 2, 3, 4, 5} for i in S: print(i)
出力結果
1 2 3 4 5
今回はsetの使い方について解説しました。
ではまたお会いしましょう!さようなら~