Himakiji ログイン
TOP組み込み関数データ型

集合型

説明

集合型とは
set={a,b,c}のように{}を使って複数の値を格納
 要素に順番(インデックス)がなく、重複した要素は自動で削除される
 集合演算ができる

 空の集合を作るときは a={} ではなく a=set() にする必要がある

メソッド:追加

add()
要素を一つ追加

同じ要素がすでに入っている場合何も起こらない
コードをコピーする
set.add(element)
update()
複数の要素を追加

引数は複数渡すことが可能
”ABC”などの文字列も繰り返して入力されるため、”A”,”B”,”C”が追加される
コードをコピーする
set.update(*iterable)

メソッド:削除

remove()
指定した要素を削除

指定した要素が存在しない場合エラー処理(KeyError)
コードをコピーする
set.remove(element)
discard()
指定した要素を削除

remove()と似ているが、こちらは指定した要素が存在しない場合でもエラーにならない
コードをコピーする
set.dicard(element)
pop()
要素を一つ取り出して削除できる
取り出す要素は指定できない

空の集合で実行するとエラー処理(KeyError)

返り値に削除した要素を返す
コードをコピーする
set.pop()
clear()
集合内の要素をすべて削除する

これを実行した後の集合は空の集合になる
コードをコピーする
set.clear()

メソッド:その他

len()
集合内の要素数を返す
コードをコピーする
len(object)
copy()
集合をコピーする

コピーを使わないと同じ集合を複数の変数で共有することになる
複数の変数で同じ集合から独立して操作をしたい場合に使用
コードをコピーする
set.copy()

メソッド:集合演算

union()
複数の集合を結合して新しい集合を作る(和集合)
コードをコピーする
set.union(*others)
intersection()
複数の集合で共通する要素だけを取得(積集合)
コードをコピーする
set.intersection(*others)
difference()
呼び出し元の集合にだけ存在する要素を取得(差集合)
コードをコピーする
set.difference(*others)
symmetic_difference
片方の集合にしか存在しない要素を取得(対象差集合)
コードをコピーする
set.symmetric_difference(other)

例文(そのままコピペして動きます

コードをコピーする
# サンプル値
set = {1,3,4,6}
set0 = {2,4,6}
set1 = {3,5,7}

print("\nadd()")
print(set)
set.add(9)
print(set)

print("\nupdate()")
print(set)
set.update([7,8])
print(set)

print("\nremove()")
print(set)
set.remove(7)
print(set)

print("\ndiscard()")
print(set)
set.discard(8)
print(set)

print("\npop()")
print(set)
set.pop()
print(set)

print("\nclear()")
print(set)
set.clear()
print(set)

set = {1,3,4,6}

print("\nlen()")
print(len(set))

print("\ncopy()")
set_copy = set.copy()
print(set_copy)


print("\nunion()")
set_u = set.union(set0,set1)
print(set_u)

print("\nintersection()")
set_i = set.intersection(set0)
print(set_i)

print("\ndifference()")
set_d = set.difference(set0,set1)
print(set_d)

print("\nsymmetric_difference()")
set_s = set.symmetric_difference(set1)
print(set_s)
5view 0点 良い 悪い
ページ戻る
コメント0件
コメントを取得中