알고리즘 스터디
파이썬 기본 문법 <집합>
CleStella
2024. 3. 31. 21:48
집합이란?
중복을 허용하지 않으며, 순서가 없는 자료형이다.
= > 순서가 없기 때문에 인덱싱으로 값을 얻을 수 없다.
집합을 파이썬에서 정의하는 방법
s1 = set([1,2,3])
>>>s1
{1,2,3}
s2 = set("Hello")
s2
{'e','l','o','H'}
위와 같이 set()의 괄호 안에 리스트를 입력하여 만들거나 아래와 같이 문자열을 입력하여 정의한다.
집합의 연산
s1=set([1,2,3,4,5,6])
s2=set([4,5,6,7,8,9])
교집합
s1&s2
>>>{4,5,6}
s1.intersection(s2)
>>>{4,5,6}
'&' 기호를 이용하거나 intersection함수를 이용하여 교집합을 구한다
합집합
s1|s2
>>>{1,2,3,4,5,6,7,8,9}
s1.union(s2)
>>>{1,2,3,4,5,6,7,8,9}
'|'기호를 이용하거나 union함수를 이용하여 합집합을 구한다.
차집합
s1-s2
>>>{1,2,3}
s1.difference(s2)
>>>{1,2,3}
s2-s1
>>>{8,9,7}
s2.difference(s1)
>>>{8,9,7}
'-'기호를 이용하거나 difference함수를 이용하여 차집합을 구한다.
집합 함수들
값 1개 추가하기(add)
>>>s1 = set([1,2,3])
>>>s1.add(4)
>>>s1
{1,2,3,4}
값 여러개 추가하기(update)
>>>s1 = set([1,2,3])
>>>s1.update([4,5,6])
>>>s1
{1,2,3,4,5,6}
특정 값 제거하기(remove)
>>>s1 = set([1,2,3])
>>>s1.remove(2)
>>>s1
{1,3}