Programming/Python

Python Set 사용 방법

느리게 걷는 즐거움 2024. 4. 5. 11:10
반응형

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}

 

반응형