Pythonの基本データ型であるSet
3804 ワード
setは無秩序なセットであり、セット内の各要素はユニークであり、セット自体は要素を追加、削除することができます.次に、セット(set)の特性を理解します.
集合の定義
メタグループは括弧()を使用し、リストは中括弧[]を使用し、コレクションは括弧{}を使用して定義されます.
集合のプロパティ無秩序 以前は文字列、リスト、メタグループを共有していたときと同じ特徴がありました.秩序化されているので、インデックスとスライスで各要素にアクセスできます.しかし、コレクションは無秩序であり、インデックスやスライスを使用できないことを意味します.各要素はユニークな です.
リスト、メタグループを比較すると、集合の各要素が一意であることがわかります.集合のこのような特性のため、集合を使用して重くすることができます.
要素の追加
add()またはupdate()は、集合に要素を追加できます.異なるのは、単一の要素を追加するときにadd()を使用します.追加されたオブジェクトがtuple()、list()、set()などのタイプの場合はupdate()を使用できます.次に、両者の違いをコードで説明します. add()の使い方 update()の使い方
要素の削除
discard()とremove()は、集合内の要素を削除できます.2つの方法の唯一の違いは、要素が集合内に存在しない場合、discard()を使用して要素の集合を削除しても変わらないが、remove()はエラーを報告することです.
pop()とclear()は、コレクション内の要素を削除することもできます.
小結discard()、remove()、pop()、clear()の違い discard()存在しない集合要素を削除しても を誤ることはない. remove()要素が存在しない集合要素を削除すると とエラーが発生します. pop()は、削除された要素 を返します. clear()クリア要素 集合の数学演算
2つの集合の差を求めます需要:{1,2,3,4},{2,3,5}.第1の集合から第2の集合にも存在する要素 を取り除く.
2つの集合の交差を求めます需要:{1,2,3,4},{2,3}の2つの集合の同じ要素 を求める
2つの集合の同時集合を求めます需要:{1,2,3,4},{3,4,5}の2つの集合を1つに結合し、重複要素 を持つことはできない.
上記の3つの方法は、ほとんどのニーズを満たすことができますが、2つのセットの同じ要素を除去し、次のコードに示すように、異なる要素を新しいセットにする必要があります.
コレクション内のより多くの組み込み方法
コレクションをコピー
2つの集合に共通要素があるかどうかを判断する
ある集合に別の集合が含まれているかどうかを判断する
コレクション内の要素がtrueであるかどうかを判断する
コレクションの長さの計算
コレクション内の最大値の計算
コレクション内の最小値の計算
集合要素の和の計算
要素が集合に存在するかどうかを判断する
listとsetの相互変換
Listとsetの相互変換はlist中の重複要素を除去することができ,主に集合要素がユニークでなければならない特性を借りている.
まとめ:集合はpythonの中で1種の重要なデータ型で、重点的に集合の基本的な特性を掌握して、熟練して差集、交差、並集を運用して、いくつかの内蔵の方法は先に理解することができて、後でコードを書く時資料を調べるのに便利です
集合の定義
a={1,True,'Hello world',(1,2,3)}
print(type(a))
# set
メタグループは括弧()を使用し、リストは中括弧[]を使用し、コレクションは括弧{}を使用して定義されます.
集合のプロパティ
a={1,2,3,4,5}
print(a[1])
print(a[1:3])
#
リスト、メタグループを比較すると、集合の各要素が一意であることがわかります.集合のこのような特性のため、集合を使用して重くすることができます.
a={1,2,3,4,4,3,2}
print(a)
# {1,2,3,4}
要素の追加
add()またはupdate()は、集合に要素を追加できます.異なるのは、単一の要素を追加するときにadd()を使用します.追加されたオブジェクトがtuple()、list()、set()などのタイプの場合はupdate()を使用できます.次に、両者の違いをコードで説明します.
a = {1,2,3,4,5}
a.add(6)
print(a)
# {1,2,3,4,5,6}
a = {1,2,3,4,5}
a.update((5,6,7))
print(a)
# {1,2,3,4,5,6,7}
要素の削除
discard()とremove()は、集合内の要素を削除できます.2つの方法の唯一の違いは、要素が集合内に存在しない場合、discard()を使用して要素の集合を削除しても変わらないが、remove()はエラーを報告することです.
a={1,2,3,4}
a.discard(5)
print(a)
# {1,2,3,4}
a.remove(5)
#
Traceback (most recent call last):
File "", line 1, in
KeyError: 5
pop()とclear()は、コレクション内の要素を削除することもできます.
a={1,2,3,4,5}
print(a.pop())
# 1
print(a)
# {2,3,4,5}
a.clear()
print(a)
# set()
小結discard()、remove()、pop()、clear()の違い
2つの集合の差を求めます
a={1,2,3,4}
b={2,3,5}
a-b
# {1,4}
a.difference(b)
# {1,4}
2つの集合の交差を求めます
a={1,2,3,4}
b={2,3,5}
a&b
# {2,3}
a.intersection(b)
# {2,3}
2つの集合の同時集合を求めます
a={1,2,3,4}
b={2,3,5}
a|b
# {1,2,3,4,5}
a.union(b)
# {1,2,3,4,5}
上記の3つの方法は、ほとんどのニーズを満たすことができますが、2つのセットの同じ要素を除去し、次のコードに示すように、異なる要素を新しいセットにする必要があります.
a={1,2,3,4}
b={3,4,5,6}
# {1,2,5,6}
a^b
a.symmetric_difference(b)
# {1,2,5,6}
コレクション内のより多くの組み込み方法
コレクションをコピー
a={1,2,3,4}
b=a.copy()
print(b)
# {1,2,3,4}
2つの集合に共通要素があるかどうかを判断する
a={1,2,3,4}
b={100,200,300}
c={1,100,4}
print(a.isdisjoint(b))
# True
print(a.isdisjoint(c))
# False
ある集合に別の集合が含まれているかどうかを判断する
a={1,2,3,4}
b={1,2,3,4,5}
# a b
print(a.issubset(b))
# True
# b a
print(b.issubset(a))
# False
コレクション内の要素がtrueであるかどうかを判断する
print(all({1,2,3,'Test'}))
# True
# True
print(all({}))
# True
print(all({False,3,4,5}))
# False
コレクションの長さの計算
a={1,2,3,4,5}
print(len(a))
# 5
print(len({}))
# 0
コレクション内の最大値の計算
a={1,2,3,4,5}
print(max(a))
# 5
コレクション内の最小値の計算
a={1,2,3,4,5}
print(min(a))
# 1
集合要素の和の計算
a={1,2,3,4,5}
print(sum(a))
# 15
要素が集合に存在するかどうかを判断する
a={1,2,3,4,5}
print(1 in a)
# True
print(10 in a)
# False
listとsetの相互変換
a=[1,2,3,4,5]
print(set(a))
# {1,2,3,4,5}
a={1,2,3,4,5}
print(list(a))
# [1,2,3,4,5]
Listとsetの相互変換はlist中の重複要素を除去することができ,主に集合要素がユニークでなければならない特性を借りている.
まとめ:集合はpythonの中で1種の重要なデータ型で、重点的に集合の基本的な特性を掌握して、熟練して差集、交差、並集を運用して、いくつかの内蔵の方法は先に理解することができて、後でコードを書く時資料を調べるのに便利です