A、コレクションのPythonのセット
1、セットのコンセプト
- 変数が設定されて乱れ、要素のコレクションが繰り返されることはありません。要素と非ハッシュ型のセット内のその要素は発生しません。(すなわち、必要な要素の組は、ハッシュとすることができます)
- 非ハッシュリスト、セット、の一般的なタイプのByteArray
- インデックスが作成されていない要素のセットが、繰り返すことができます
2、定義を設定します
- 例えば:S1 =セット()
- 例えば:S2 =セット(範囲(5))
- 例えば:S3 = { ''、2,2,3-は、 'ABC' が}集合= { ''、2,3、 'ABC'}と等価です。要素内部のセットを繰り返すことができません。
図3に示すように、セットの一般的な操作
- 要素が存在する場合、一度だけ、要素を追加することを値なし#(注)を返します(ELEM)を追加し、追加されていません
- セットにセットに他の要素と組み合わせてアップデート(*など)#、他のものは反復可能でなければなりません。戻り値なし現場での修正
- 削除(ELEM)は要素のセットから除去され、例外は存在しない要素はKeyError例外スローさ
- deiscard(ELEM)がセットから要素を削除し、その要素は何もしないように存在していません。
- ポップ() - >アイテムがコレクションから要素を除去し、除去するためにランダム要素を返します。異常な呼び出しが空のコレクションを返しますKeyError例外
- クリア()すべての要素を削除します
- セットには、型のコレクション、ユニークな要素、修復不可能です。いわゆる修飾は、「新たな要素を追加する完全に異なる要素に現在の要素が、除去することである」であります
- 非線形構造の集合集合ではなく、インデックス
4、コレクション
- すべての要素の全集:(ユニオンU、労働組合の平均値の集合)。
- サブセット(サブセットとスーパーセットスーパーのサブセット)集合B内の他のすべての要素の集合A、AはBの部分集合であり、BはAのスーパーセットであります
- そしてセット:組み合わせた結果の複数のセット
- 交差点:コレクションの多くの公共の一部
- セットの違い:コレクションと公共のセットの他の部分の除去
- サブセット真スーパーセット:AはBの部分集合であり、AはBと等しくない場合、Aは、サブセットBは、Bは、集合Aのスーパーセットであります
5、集合演算子
- そして、集合演算子:|
- [|]とSET演算子(ユニオン(*他の人)にもすることができます)(新しいコレクションを返します)
- [| =] updateメソッドに相当します。そして、複数のコレクションとその場で変更で
- そしてセット:2 AとBのすべての要素のセットが一緒にマージされます
- 交差点演算子:&
- [b]戻り交差点の複数のセットの交点に相当します。(新しいコレクションを返します)
- [] =&Intersection_update交差点に相当し、取得の複数の組、およびインプレース変更。
- 交差点:からなる集合Bに属する要素の集合AとB、
- 集合差演算子: -
- [ - ]セットと複数組の間の差を返す同等差(*など)であり、それはの新しいセットが返され
- [ - ] =当difference_update(*など)インサイチュ変形例における複数組の差分を取得し、
- 差分セット:セットAとBは、AがBからなるセットのすべての要素の属に属していません
- 対称差:^
- ^ symmetric_differece(その他)に同じ]は新しいセット(セットと別のセットの差)を返します
二、辞書でPythonの辞書
1、dictの辞書コンセプト
- 辞書は、非線形構造であり、鍵は、データセットのキーと値のペアで構成されています。
- 辞書機能:変数、無秩序、キー非繰り返し。
2、dictの辞書の定義
- 辞書}または{[()]空の辞書を定義することができます。
- [dictの(** kwargsからは)]辞書を初期化するためにキーの名前=値のペアを使用することができます
- [dictの(反復可能な、** kwarg)]イテラブル構成と名前=値の辞書を使用して、しかし要素は二重構造でなければならないイテレート可能オブジェクト
- [辞書です(マッピング、** kwarg)]別の辞書を構築するために辞書を使用して
- {}直接定義:例えば:E = { "":10、 "B":20、 "C":30}
- fromkeys(反復可能、値)に応じて辞書を構築する[方法#クラス初期化セット
- 反復可能:反復可能なキーのセット
- 値:デフォルト対応が構築されたすべてのデフォルトです。(デフォルトなしが存在しない場合、私は書くことはできません)
3、要素へのアクセス
- KeyError例外スローされる例外は存在しない可能性がある場合、[D [キー]戻り値は、利用可能な値を対応します
- [取得(キー[デフォルト])]キーが存在しない場合は、キーの値に対応する戻り値は、行方不明なしのデフォルトのデフォルト値、デフォルト値を返します。
- 値に対応する[は、SetDefault(キー[デフォルト])]リターンキー値キーがデフォルトの値セット、KVのペアを追加し、存在し、デフォルトに戻らない場合は、デフォルトが設定されていない場合に、、、どれも返されません
- [キー()]すべてのキーのコレクションのディクショナリを取得します
- [値()}、または値の辞書のすべての値の組
- [アイテム()]は、すべてのコレクションを取得し、キーと値のペアからなる辞書
図4に示すように、辞書の辞書の一般的な操作
(1)新規および修飾
- [D [キー] =値]変更された値のキーオブジェクトが値であるキーが追加された新しいキー値に対応する存在しない場合
- [更新([その他]) - >なし】辞書データ辞書の使用は存在しないキーが追加された場合、キーに対応するキーをカバーする既存の値に存在する更新されます。場所の変更、ノーリターン値
(2)削除
- [ポップ(キー[デフォルト])]に除去されるキー値に対応する、キーの対応する値を返します。キーは、デフォルト値のdefalutを返すために存在しない場合。デフォルトが設定されていない、キーが存在しない場合は、例外KeyError例外がスローされます
- [Popitemは()]は削除され、戻り任意のキーと値のペアは、辞書は、例外をスローするとき、空の空KeyError例外
- [クリア()]空辞書
- [デルD [キー]削除指定されたキーと値のペア
(3)トラバーサル
- 辞書建物セットまたは対応するリストのセットに従ってリスト(d.keys())
- 注:[iに対するa.keys()には] []、直接または直接要素タプルを横断する方法を用いて、私はと等価である
[iについて、a.itemsにおけるk()]