본문으로 바로가기

파이썬 집합(set) 자료형 정리

category python 2020. 5. 23. 16:21
반응형

집합(set) 의 함수에 대해 정리.

집합 자료형의 특징은

리스트나 튜플은 순서가 있기 때문에 인덱싱을 통해 값을 얻지만 set 자료형은 순서가 없다.

set으로 쉽게 사용할수 있는것은 교집합,합집합,차집합 등으로 사용하면 편하다.

  • 순서가 없다.
  • 중복을 허용하지 않는다.
set은 어떻게 만드나
set set 추가,수정,삭제
set 삭제시 remove , discard 다른점
합집합 구하기
교집합 구하기
차집합 구하기
대칭 차이 구하기

  • set 은 어떻게 만드나?
 
= {123}
print(a)
# >> {1, 2, 3}
 
= {1.0"Hello", (123)}
print(a)
# >>> {1.0, 'Hello', (1, 2, 3)}
 
# 중복허용 X
= {123432}
print(a)
# >>> {1, 2, 3, 4}
 
# 리스트 set 변환
= set([1,2,3])
print(a)
 

  • set 추가,수정,삭제
# set 생성
= {123}
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
= {13456}
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}
 

  • 합집합 구하기

= {12}
= {34}
 
print(a | b)
# >>> {1, 2, 3, 4}

print(a.union(b))
# >>> {1,2,3,4}


  • 교집합 구하기

 
= {12}
= {234}
 
print(a & b)
# >>> {2}
 
print(a.intersection(b))
# >>> {2}
 

  • 차집합 구하기

= {12345}
= {45678}
 
print(a - b)
# >>> {1, 2, 3}

print(a.difference(b))
# >>> {1, 2, 3}

  • 대칭 차이 구하기

= {12345}
= {45678}
 
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