반응형
집합(set) 의 함수에 대해 정리.
집합 자료형의 특징은
리스트나 튜플은 순서가 있기 때문에 인덱싱을 통해 값을 얻지만 set 자료형은 순서가 없다.
set으로 쉽게 사용할수 있는것은 교집합,합집합,차집합 등으로 사용하면 편하다.
- 순서가 없다.
- 중복을 허용하지 않는다.
set은 어떻게 만드나 |
set set 추가,수정,삭제 |
set 삭제시 remove , discard 다른점 |
합집합 구하기 |
교집합 구하기 |
차집합 구하기 |
대칭 차이 구하기 |
- set 은 어떻게 만드나?
a = {1, 2, 3}
print(a)
# >> {1, 2, 3}
a = {1.0, "Hello", (1, 2, 3)}
print(a)
# >>> {1.0, 'Hello', (1, 2, 3)}
# 중복허용 X
a = {1, 2, 3, 4, 3, 2}
print(a)
# >>> {1, 2, 3, 4}
# 리스트 set 변환
a = set([1,2,3])
print(a)
|
- set 추가,수정,삭제
# set 생성
a = {1, 2, 3}
print(a)
# >> {1, 2, 3}
# 추가
a.add(4)
print(a)
# >>> {1, 2, 3, 4}
# 수정
a.update((1,2,3,5))
print(a)
# >>> {1, 2, 3, 4, 5}
# 삭제
a.remove(3)
print(a)
# >>> {1, 2, 4, 5}
|
- set 삭제시 remove , discard 다른점
discard 는 set 에 요소가 없을시 변경하지 않고
remove 는 set 에 요소가 없을시 에러를 발생시킨다.
# init
a = {1, 3, 4, 5, 6}
print(a)
# 에러 발생
a.remove(7)
print(a)
# >>> Traceback (most recent call last):
# File "stdin", line 6, in <module>
# a.remove(7)
# KeyError: 7
a.discard(7)
print(a)
# >> {1, 3, 4, 5, 6}
|
- 합집합 구하기
a = {1, 2}
b = {3, 4}
print(a | b)
# >>> {1, 2, 3, 4}
print(a.union(b)) # >>> {1,2,3,4} |
- 교집합 구하기
a = {1, 2}
b = {2, 3, 4}
print(a & b)
# >>> {2}
print(a.intersection(b))
# >>> {2} |
- 차집합 구하기
a = {1, 2, 3, 4, 5}
b = {4, 5, 6, 7, 8}
print(a - b)
# >>> {1, 2, 3}
print(a.difference(b)) # >>> {1, 2, 3} |
- 대칭 차이 구하기
a = {1, 2, 3, 4, 5}
b = {4, 5, 6, 7, 8}
print(a ^ b)
# >>> {1, 2, 3, 6, 7, 8}
print(a.symmetric_difference(b))
# >>> {1, 2, 3, 6, 7, 8}
|
반응형
'python' 카테고리의 다른 글
파이썬 모듈 사용하기 (1) | 2020.06.03 |
---|---|
파이썬 제어문(if) 정리 (0) | 2020.05.25 |
파이썬 딕셔너리(dict) 정리 (0) | 2020.05.22 |
파이썬 튜플(tuple) 정리 (0) | 2020.05.22 |
파이썬 리스트(list) 관련 함수 정리 (0) | 2020.05.21 |