본문 바로가기
Programming/Python

Python Set 사용 방법

by 느리게 걷는 즐거움 2024. 4. 5.
728x90
반응형

Python Set 사용 방법

파이썬에서 Set(집합)은 고유한 값을 저장하는 데이터 구조로, 중복된 값을 허용하지 않고 순서를 보장하지 않습니다. 이 글에서는 파이썬에서 Set을 사용하는 방법을 알아보겠습니다.

Set 생성

Set은 중괄호 `{}`를 사용하여 생성하거나 `set()` 함수를 사용하여 생성할 수 있습니다.

>>> set1 = set([1,2,3])
>>> set1
{1, 2, 3}

 

Set에 데이터 추가

Set에 데이터를 추가할 때는 `add()` 메서드를 사용합니다.

>>> set1.add(4)
>>> set1
{1, 2, 3, 4}

 

 

Set에서 데이터 제거

Set에서 데이터를 제거할 때는 `remove()` 메서드를 사용합니다.

>>> set1.remove(4)
>>> set1
{1, 2, 3}

 

Set 연산

Set은 합집합, 교집합, 차집합 등의 집합 연산을 지원합니다.

합집합: `union()` 메서드 또는 `|` 연산자 사용
교집합: `intersection()` 메서드 또는 `&` 연산자 사용
차집합: `difference()` 메서드 또는 `-` 연산자 사용

>>> set1 = set([1,2,3])
>>> set2 = set([3,4,5])

# 합집합
>>> union_set = set1.union(set2)
>>> union_set
{1, 2, 3, 4, 5}

# 교집합
>>> intersection_set = set1.intersection(set2)
>>> intersection_set
{3}

# 차집합
>>> diff_set = set1.difference(set2)
>>> diff_set
{1, 2}

 

Set 순회

Set은 순서가 없는 데이터 구조이므로 반복문을 통해 순회할 때 순서는 보장되지 않습니다.

>>> set1 = set([1,2,3,4,5,6,7])
>>> for item in set1:
	    print(item)

 

중복제거하기

Set은 중복된 값을 허용하지 않기 때문에 중복 제거에 유용합니다. 리스트나 튜플을 Set으로 변환하여 중복을 제거할 수 있습니다.

>>> list1 = [1,2,3,3,5,5,7]
>>> unique_set = set(list1)
>>> unique_set
{1, 2, 3, 5, 7}

중복된 데이터인 '3', '5'는 중복이 제거되고 하나의 데이터만 남았습니다.

이상으로 파이썬에서 Set을 사용하는 방법에 대해 알아보았습니다. Set은 중복된 값을 제거하고 집합 연산을 수행하는 데 유용한 자료구조입니다.

중복찾기

두 개 이상의 리스트에서 중복된 항목을 찾는 데 Set을 사용할 수 있습니다. 교집합을 사용합니다.

>>> list1 = [1, 2, 3, 4, 5]
>>> list2 = [4, 5, 6, 7, 8]
>>> duplicates = set(list1) & set(list2)
>>> print(duplicates)  # 출력: {4, 5}
{4, 5}

 

728x90
반응형