[파이썬] 집합의 존재 여부 확인

Python에서 집합(set)은 고유한 요소들로 구성된 컬렉션입니다. 집합은 중복된 요소를 허용하지 않으며, 순서가 없습니다. 이러한 특징을 활용하여 집합의 존재 여부를 확인하는 방법을 알아보겠습니다.

Python에서 집합의 존재 여부를 확인하는 방법은 크게 두 가지가 있습니다:

  1. in 키워드를 사용하여 포함 여부 확인하기
  2. set의 메서드를 사용하여 집합의 교집합이나 합집합을 계산하여 비어 있는지 확인하기

1. in 키워드를 사용하여 포함 여부 확인하기

집합(set)에서 존재 여부를 확인하는 가장 간단한 방법은 in 키워드를 사용하는 것입니다. 다음 코드는 in 키워드를 사용하여 집합에 특정 요소가 포함되어 있는지 확인하는 예제입니다.

fruits = {'apple', 'banana', 'orange', 'grape'}
if 'banana' in fruits:
    print("바나나가 집합에 있습니다.")
else:
    print("바나나가 집합에 없습니다.")

위 코드의 결과는 다음과 같이 출력됩니다:

바나나가 집합에 있습니다.

2. set의 메서드를 사용하여 집합의 교집합이나 합집합을 계산하여 비어 있는지 확인하기

Python의 set 클래스는 여러 유용한 메서드를 제공합니다. 이 중에는 집합의 교집합, 합집합 등을 계산하는 메서드도 있습니다. 이를 활용하여 집합이 비어 있는지 확인할 수 있습니다.

set1 = {1, 2, 3, 4}
set2 = {5, 6, 7, 8}
intersection = set1.intersection(set2)  # 교집합 계산
if intersection:  # 비어 있지 않으면 True
    print("두 집합의 교집합이 비어 있지 않습니다.")
else:
    print("두 집합의 교집합이 비어 있습니다.")

union = set1.union(set2)  # 합집합 계산
if union:  # 비어 있지 않으면 True
    print("두 집합의 합집합이 비어 있지 않습니다.")
else:
    print("두 집합의 합집합이 비어 있습니다.")

위 코드의 결과는 다음과 같이 출력됩니다:

두 집합의 교집합이 비어 있습니다.
두 집합의 합집합이 비어 있지 않습니다.

위 두 가지 방법을 활용하여 Python에서 집합의 존재 여부를 확인할 수 있습니다. 각각의 상황에 맞게 적절한 방법을 선택하여 사용하면 됩니다.