Programming/Python

[Python] 파이썬 집합(set)에 대해서 알아보자.

빙기때침식곡 2021. 5. 10. 22:33
반응형

이미지 출처 www.python.org

 

이번 시간에는 파이썬 자료구조에 사용되는 집합에 대해서 알아보도록 하겠다.

 

1. 집합 (Set)

 

(1) 선언

 - set()으로 선언할 수 있다.

 - 소괄호 안에는 리스트와 같이 대괄호로 작성한다.

a = set()
b = set([1, 2, 3, 4])
c = set([1, 4, 5, 6, 6])

 

 

 

 

 

(2) 추가 & 제거

 - add()로 추가할 수 있다.

 - remove() 제거할 수 있다.

s3 = set([7, 8, 9, 10, 15])

s3.add(18)
s3.add(7)

print(s3)

s3.remove(15)

print(s3)

Result

{7, 8, 9, 10, 15, 18}
{7, 8, 9, 10, 18}

 

 

 

 

 

(3) 형변환

 - tuple()을 사용해 튜플로 형변환 할 수 있다.

 - list()을 사용해 리스트로 형변환 할 수 있다.

a = set()
b = set([1, 2, 3, 4])
c = set([1, 4, 5, 6, 6])

print(type(a))
print(c)

t = tuple(b)
print(t)

l = list(b)
print(l)

Result

<class 'set'>
{1, 4, 5, 6}
(1, 2, 3, 4)
[1, 2, 3, 4]

 

 

 

 

 

(4) 교집합

 - 집합에서 제공하는 intersection() 함수 사용

 - & 키워드 사용

s1 = set([1, 2, 3, 4 ,5 ,6])
s2 = set([4, 5, 6, 7, 8 ,9])

# 교집합
print(s1.intersection(s2))
print(s1 & s2)

Result

{4, 5, 6}
{4, 5, 6}

 

 

 

 

 

 

(5) 합집합

 - 집합에서 제공하는 union() 함수 사용

 - | 키워드 사용

s1 = set([1, 2, 3, 4 ,5 ,6])
s2 = set([4, 5, 6, 7, 8 ,9])

# 합집합
print(s1 | s2)
print(s1.union(s2))

Result

{1, 2, 3, 4, 5, 6, 7, 8, 9}
{1, 2, 3, 4, 5, 6, 7, 8, 9}

 

 

 

 

 

(6) 차집합

 - 집합에서 제공하는 difference() 함수 사용

 - - 키워드 사용

s1 = set([1, 2, 3, 4 ,5 ,6])
s2 = set([4, 5, 6, 7, 8 ,9])

print(s1 - s2)
print(s1.difference(s2))

Result

{1, 2, 3}
{1, 2, 3}
반응형