この記事では、Pythonのセット(set)に関する基本的な操作とその用途について解説します。具体的なコード例とその解説、さらには応用例も含めて、セットを使いこなすための全体像を把握するための情報を提供します。
目次
セット(set)とは?
Pythonのセット(set)は、順序のないコレクションであり、各要素が一意(重複しない)であるという特性があります。セットは数学の集合に相当し、和集合、積集合、差集合などの操作が可能です。
セットの基本的な作成方法
# セットの作成例
my_set = {1, 2, 3, 4, 5}
print(my_set)
上記の例では、数値の1から5までを要素とするセットを作成しています。
基本的な操作
要素の追加と削除
# 要素の追加
my_set.add(6)
print(my_set) # Output: {1, 2, 3, 4, 5, 6}
# 要素の削除
my_set.remove(1)
print(my_set) # Output: {2, 3, 4, 5, 6}
集合演算
集合間で行える基本的な操作として和集合、積集合、差集合があります。
# 和集合
set_a = {1, 2, 3}
set_b = {3, 4, 5}
print(set_a | set_b) # Output: {1, 2, 3, 4, 5}
# 積集合
print(set_a & set_b) # Output: {3}
# 差集合
print(set_a - set_b) # Output: {1, 2}
応用例
セットは多くの場面で非常に便利です。以下にその応用例をいくつか紹介します。
リストの重複要素の削除
# リストからセットを作成して重複要素を削除
my_list = [1, 2, 2, 3, 4, 3, 5]
unique_list = list(set(my_list))
print(unique_list) # Output: [1, 2, 3, 4, 5]
共通要素の検出
# 2つのリストに共通する要素を見つける
list_a = [1, 2, 3, 4]
list_b = [3, 4, 5, 6]
common_elements = set(list_a) & set(list_b)
print(common_elements) # Output: {3, 4}
条件に合う要素の抽出
# 条件に合う要素を抽出する
nums = {1, 2, 3, 4, 5, 6}
filtered_nums = {x for x in nums if x > 3}
print(filtered_nums) # Output: {4, 5, 6}
まとめ
Pythonのセットは順序のない、一意の要素から成る強力なデータ構造です。基本的な操作から応用例まで、多くのケースでセットは役立つことが理解できたかと思います。
コメント