집합(set)
집합은 파이썬 2.3부터 지원하기 시작한 자료형이다. 집합에 관련된 것을 쉽게 처리하기 위해 만들어졌다. 중복을 허용하지 않고, 순서가 없어서(Unordered) 인덱싱으로 값을 얻을 수 없다. 인덱싱을 하고 싶으면 리스트나(list(집합명)), 튜플(tuple(집합명))로 변환해서 사용해야 한다.
집합 사용법
집합명 = set(집합으로 만들 값들)
집합으로 만들어주는 값에 중복이 있다면 중복 된 값은 한 하나만 추가된다.
s1 = set() #비어있는 집합 자료형
s2 = set([1,2,3]) #s2={1,2,3}
s3 = set("Hello") #s3={'H', 'e', 'l', 'o'}
1. 교집합(&, intersection())
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}
2. 합집합(|, union())
s1 | s2
# {1, 2, 3, 4, 5, 6, 7, 8, 9}
s1.union(s2)
# {1, 2, 3, 4, 5, 6, 7, 8, 9}
3. 차집합(-, difference())
s1 - s2
# {1, 2, 3}
s2 - s1
# {7, 8, 9}
s1.difference(s2)
# {1, 2, 3}
s2.difference(s1)
# {7, 8, 9}
집합 내장함수
값 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}
'프로그래밍언어 > Python' 카테고리의 다른 글
[Python] 컴프리헨션(Comprehension) (0) | 2021.12.27 |
---|---|
[Python] 파이썬 자료형 : 불 (0) | 2021.12.27 |
[Python] 파이썬 자료형 : 딕셔너리 (0) | 2021.12.27 |
[Python] 파이썬 자료형 : 튜플 (0) | 2021.02.17 |
[Python] 파이썬 자료형 : 리스트 (0) | 2021.02.14 |