[파이썬] 집합의 요소 삭제하기 (remove, discard)
파이썬에서 집합(Set)은 고유한 요소들의 모임을 나타내는 데이터 구조입니다. 집합은 중복된 값을 허용하지 않으며, 요소들의 순서도 보장되지 않습니다. 이러한 특성 덕분에 집합은 많은 유용한 작업을 수행하는 데 매우 유용합니다.
이번 글에서는 파이썬의 집합에서 요소를 삭제하는 방법인 remove
와 discard
에 대해 살펴보겠습니다.
remove
메서드
remove
메서드는 집합에서 특정 요소를 제거합니다. 만약 집합에 제거하려는 요소가 존재하지 않는다면, KeyError
예외가 발생합니다.
다음은 remove
메서드를 사용하여 요소를 삭제하는 예제입니다:
my_set = {1, 2, 3, 4, 5}
my_set.remove(3) # 요소 3을 삭제합니다.
print(my_set) # 출력: {1, 2, 4, 5}
discard
메서드
discard
메서드는 remove
와 동일한 기능을 수행하지만, 삭제하려는 요소가 집합에 없더라도 예외가 발생하지 않습니다.
다음은 discard
메서드를 사용하여 요소를 삭제하는 예제입니다:
my_set = {1, 2, 3, 4, 5}
my_set.discard(3) # 요소 3을 삭제합니다.
print(my_set) # 출력: {1, 2, 4, 5}
my_set.discard(10) # 요소 10을 삭제하려 해도, 집합에 없으므로 아무런 변화가 없습니다.
print(my_set) # 출력: {1, 2, 4, 5}
discard
메서드는 요소가 존재하는지 여부를 확인하지 않고 삭제를 시도하기 때문에, 코드의 실행 중에 예외가 발생하지 않아야 하는 경우에 유용합니다.
요약
이번 글에서는 파이썬의 집합에서 요소를 삭제하는 두 가지 메서드인 remove
와 discard
에 대해 배웠습니다. remove
는 요소를 삭제하려는 경우 요소가 집합에 존재해야 하며, 요소가 없는 경우에는 예외가 발생합니다. 반면, discard
는 요소의 존재 여부를 확인하지 않고 예외를 발생시키지 않으며 요소를 삭제합니다. 이러한 메서드를 적절히 활용하여 집합에서 요소를 원활하게 삭제할 수 있습니다.