본문 바로가기

프로그래밍/Python

세트(set), 집합

집합을 표현하는 set

nums = {1,2,3,4}
print(type(nums))
print(3 in nums)

## 출력
<class 'set'>
True

 

빈 set만들기

nums = set()
print(nums)
nums = set(range(5))
print(nums)

## 출력
set()
{0, 1, 2, 3, 4}

 

합집합

a = set(range(5))
b = set(range(5,10))
print(a)
print(b)
print(a | b)
print(a.union(b))


## 출력
{0, 1, 2, 3, 4}
{5, 6, 7, 8, 9}
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}

 

교집합

a = set(range(5))
b = set(range(3,8))
print(a)
print(b)
print(a & b)
print(a.intersection(b))

## 출력
{0, 1, 2, 3, 4}
{3, 4, 5, 6, 7}
{3, 4}
{3, 4}

 

차집합

a = set(range(5))
b = set(range(3,8))
print(a)
print(b)
print(a - b)
print(a.difference(b))
print(b-a)
print(b.difference(a))

## 출력
{0, 1, 2, 3, 4}
{3, 4, 5, 6, 7}
{0, 1, 2}
{0, 1, 2}
{5, 6, 7}
{5, 6, 7}

 

대칭차집합

a = set(range(5))
b = set(range(3,8))
print(a)
print(b)
print(a ^ b)
print(a.symmetric_difference(b))

## 출력
{0, 1, 2, 3, 4}
{3, 4, 5, 6, 7}
{0, 1, 2, 5, 6, 7}
{0, 1, 2, 5, 6, 7}

 

집합에 새로 할당하기

a = set(range(5))
print(a)
a |= {5}
print(a)
a -= {1}
print(a)
a &={1,2,3,4}
print(a)
a ^={1,2,3}
print(a)

## 출력
{0, 1, 2, 3, 4} #a
{0, 1, 2, 3, 4, 5} #a += {5}
{0, 2, 3, 4, 5} #a -= {1}
{2, 3, 4} #a &= {1,2,3,4}
{1, 4} #a ^= {1,2,3}

'프로그래밍 > Python' 카테고리의 다른 글

함수  (0) 2020.03.13
파일 사용  (0) 2020.03.13
문자열 응용  (0) 2020.03.13
파이썬 리스트 컴프리헨션(list comprehension)  (0) 2020.03.13
리스트, 튜플 응용  (0) 2020.03.13