この章では2つのセット間の共通した要素だけを使って、新たなセットを作るメソッドについて説明します。
この方法は3つあるので順番に説明します。
1つ目の例をみてみましょう。 aのセットとbのセットの2つのセットがありますが、2つのセット間の共通した要素だけを使って、新たなセットを作成するには
という構文で記述します。
両セット間で共通してない6,8,3,5は捨てられ、新たなセットが作成されます。
intersectionは frozensetでも使うことができます。
結果は次の通りです。
2つ目の例をみてみましょう。 aのセットとbのセットの2つのセットがあるとして、2つのセット間の共通した要素だけを使ってaのセットを書き替えるには
という構文で書きます。
両セット間で共通してない6,8,3,5は捨てられ、aのセットはに変更されます。
intersection_update メソッドは2つのセット間の共通した要素でaのセットを書き替える機能があります。
新たなセットが作成されるのではなく、元のセットが書き替えられます。
intersection_updateメソッドはfrozensetでは使うことができません。
結果は次の通りです。
3つ目の例をみてみましょう。 この例も2つのセットの共通した要素だけでセットを作ります。
作成方法は&を使用します。 a &=bのように元のセットaを変更してもいいですし、もしくは
のようにcという新たなセットを作成してもいいです。
& は frozensetでも使用することができます。
結果は以下の通りです。
タグ: frozenset
セットに新たな要素を入れたり、削除しよう
この章ではセットに新たな要素を入れたり、要素を削除する方法について説明します。
では例をみてみましょう。 セットに要素を新たに付け加えるにはaddメソッドを使用します。
この例では10とaを付け加えています。
次はセットの要素を削除するremoveメソッドについて説明します。 例では以下のようにセットの要素である1と9を削除しています。
次はセットのすべての要素を一気にすべて削除するclearメソッドについて説明します。
では例をみてみましょう。 clearメソッドの基本構文は以下の通りです。
clearメソッドはセットのすべての要素を削除します。
この後、for文で出力しても、もちろん何も表示されません。
次の例に進みます。
この例で注意してほしいことはfrozensetではaddメソッドもremoveメソッドもclearメソッドも使うことができないということです。
つまり、要素の中身を変更することはできません。 出力しようとすると以下のように
というエラーになります。
セットについて知ろう
この章ではセットについて説明します。
セットはリストと同じく、複数のデータをまとめて入れることができます。 以下がsetの基本構文です。
〇 setは新たに値を入れたり、削除したりをすることができます。
〇要素にはリスト、ディクショナリ、タプル、文字列などを入れることが出来ます。 〇 frozensetは新たに値を入れり、削除したりはできません。
では例をみてみましょう。 setの要素にはリスト形式で指定しています。
このセットは添え字を指定して取り出すことは出来ないので、for文で値を取り出しています。
出力される順番はリストのように前から取り出されるわけではありません。
結果は以下の通りです。 次の例をみてみましょう。
のようにディクショナリを要素にすることは出来ますが、printで出力すると解りますが、
のようなキーだけのリストになります。
次はタプルをセットの要素にした
ですが、これをprintで出力すると
のようなリストになります。
次は文字列をセットの要素にした
ですが、これをprintで出力すると
のような1文字1文字がリストの要素になります。
全体の結果は次の通りです。
では次の例をみてみましょう。 の形式は
と同じ意味になります。
セット名={要素}の形式は Pythonのバージョンが新しくなった時に新機能として付け加えられました。
printで出力するととなり、セットであることが分かります。
この形式も出力する時にはfor文を使用できます。
結果は以下の通りです。
次はfrozensetの例を見てみましょう。 frozensetの作成方法はsetと同じです。
この形式は後から値を付け加えたり、削除したりすることは出来ません。
はprintで出力すると
となります。
frozensetもsetと同じでfor文で出力することが出来ます。
はprintで出力すると
となります。
全体の出力結果は以下の通りです。