티스토리 뷰
오늘은 파이썬 집합의 함수 및 메소드에 대해 정리해보려 합니다!
집합은 중복을 허용하지 않기 때문에, 알고리즘 문제에서 리스트의 원소의 중복을 제거해야할 일이 있을때, 집합으로 타입을 변환해서 중복되는 원소를 제거한 후 다시 리스트로 타입변환을 해서 사용하는 경우가 많이 있습니다.
집합(Set)은 원소의 중복은 허용하지 않으면서 순서가 없는 자료형입니다.
# 집합
test_set = set() # 공집합 선언시 test_set = {} 하면, 공집합이 아닌 딕셔너리를 생성하게 됩니다.
test_set = {1,2,2,2,3,4,5}
print(test_set) #결과: {1, 2, 3, 4, 5} -> 중복 허용 X
합집합 & 교집합 & 차집합
s1 = {1,2,3,4,5}
s2 = {4,5,6,7,8}
# 합집합
print(s1|s2) #결과: {1, 2, 3, 4, 5, 6, 7, 8}
print(s1.union(s2)) #결과: {1, 2, 3, 4, 5, 6, 7, 8}
# 교집합
print(s1&s2) #결과: {4, 5}
print(s1.intersection(s2)) #결과: {4, 5}
# 차집합
print(s1-s2) #결과: {1, 2, 3}
print(s1.difference(s2)) #결과: {1, 2, 3}
● update() - 값 여러개 추가하기
s = {1,2,3,4,5}
s.update({7,8,9})
print(s) #결과: {1, 2, 3, 4, 5, 7, 8, 9}
s = {'a','b','c','d','e','f'}
print('a' in s) #결과: True
print('z' in s) #결과: False
s.add('g')
print(s) #결과: {'c', 'e', 'b', 'd', 'g', 'a', 'f'} -> 집합은 순서가 없어요!
s.remove('a')
print(s) #결과: {'c', 'e', 'b', 'd', 'g', 'f'}
s.discard('b')
print(s) #결과: {'c', 'e', 'd', 'g', 'f'}
print(s.pop()) #결과: c
s.clear()
print(s) #결과: set()
'python' 카테고리의 다른 글
Python 자료형(list,set,dictionary) 메서드 시간복잡도 정리 (1) | 2020.10.14 |
---|---|
파이썬 알고리즘 시간 측정 방법 (0) | 2020.06.26 |
파이썬 딕셔너리 관련 함수 및 메소드 정리 (0) | 2020.06.12 |
파이썬 문자열 관련 메소드 정리 (0) | 2020.06.11 |
파이썬 리스트 관련 내장 함수 및 메소드 정리 (0) | 2020.06.01 |
댓글
링크
최근에 올라온 글
최근에 달린 댓글