セットとは?
CoddyのPythonジャーニー「ロジックとフロー」セクションの一部。レッスン 29/78。
集合は一意な要素の集まりです。つまり、集合には重複する値を含めることができません。重複する値を追加しようとすると、Pythonはエラーを発生させるのではなく、自動的に重複を削除します。集合は、項目の集まりを保存し、それぞれの項目が一度だけ現れるようにしたい場合に便利です。
集合を、異なる項目のグループだと考えてみましょう。たとえば、fruits の入ったバスケットがあり、それぞれの種類を1つずつだけにしたい場合は、sets を使います。Python では、sets は辞書と同様に波かっこ {} を使って定義しますが、キーと値のペアはありません。
セットを作成する方法の例を示します:
# 数値のセットを作成する
numbers = {1, 2, 3, 4, 5}
# 文字列のセットを作成する
fruits = {"apple", "banana", "cherry"}
# 空のセットを作成する
empty_set = set()最初の例では、numbers は1から5までの数値を含むセットです。2番目の例では、fruits は文字列 "apple"、"banana"、"cherry" を含むセットです。3番目の例では、set() コンストラクターを使用して空のセットを作成する方法を示しています。空の中かっこ {} を使用して空のセットを作成することはできない点に注意してください。これは代わりに空の辞書を作成するためです。
説明したように、Python は重複を自動的に処理します。たとえば、{1, 2, 2, 3} は単純に {1, 2, 3} になります。重複している 2 は黙って破棄されます。
チャレンジ
簡単次のプログラムを書きなさい:
- 値 1, 2, 3, 4, 5 を含む、
numbersという集合を作成する。 - 値 "apple"、"banana"、"cherry" を含む、
fruitsという集合を作成する。 - 両方の集合を出力する。
テストケースは奇妙に見えるかもしれませんが、問題ありません。集合には順序がないため、どのような順序で出力されてもよいことに注意してください。
自分で試してみよう
# TODO: セットを作成する
numbers =
fruits =
# セットを出力する - 変更しないで
print(sorted(numbers))
print(sorted(fruits))このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ロジックとフローのすべてのレッスン
自分で練習してみよう: Pythonオンラインコンパイラ