-
반응형
파이썬 집합(Set) 에 부분집합인지? 등의 불(bool) 값을 반환하는 메소드들을 소개합니다
● 부분집합 확인
파이썬에서 부분집합인지를 확인 할 수 있습니다.
방법은 연산자 사용과 메소드를 사용 할 수 있습니다.
연산자 : ‘<=‘
메소드 : issubset()
예로 집합1 이 집합2의 부분 집합인지?를 확인하는 법은 아래와 같습니다.
‘집합1’ <= ‘집합2’
‘집합1’.issubset(‘집합2’)
>>> x = { 1,2,3,4}
>>> y = { 3,4, 5, 6}
>>> z = {1, 2}
## x 는 y의 부분 집합이 아니므로 False 를 반환
>>> x <= y
False
## x 는 y의 부분 집합이 아니므로 False 를 반환
>>> x.issubset(y)
False
## z 는 y의 부분 집합이 아니므로 False 를 반환
>>> z <= y
False
## z 는 x의 부분 집합이므로 True 를 반환
>>> z <= x
True
## z 는 x의 부분 집합이므로 True 를 반환
>>> z.issubset(x)
True
>>>● 확대집합 확인
부분 집합의 반대 개념입니다.
연산자 : ‘>=‘
메소드 : issuperset()
예로 집합1 이 집합2의 확대(포함하는) 집합인지?를 확인하는 법은 아래와 같습니다.
‘집합1’ >= ‘집합2’
‘집합1’.issuperset(‘집합2’)
>>> x = { 1,2,3,4}
>>> y = { 3,4, 5, 6}
>>> z = {1, 2}
>>> z >= x
False
>>> x >= x
True
>>> y >= x
False
>>> x.issuperset(z)
True
>>> z >= x
False
>>> x >= z
True
>>> x.issuperset(x)
True
>>> x >= y
False
>>> y.issuperset(x)
False
>>>● 서로 소인 집합 확인
서로 소인 집합으로 교집합이 없는 집합이면 True를 있으면 False 를 반환합니다.
메소드 : isdisjoint()
예로 집합1 이 집합2의 확대(포함하는) 집합인지?를 확인하는 법은 아래와 같습니다.
‘집합1’ >= ‘집합2’
‘집합1’.issuperset(‘집합2’)
>>> x = { 1,2,3,4}
>>> y = { 3,4, 5, 6}
>>> z = {1, 2}
## X와 Y 는 3 ,4 의 교집합이 있으므로 False
>>> x.isdisjoint(y)
False
## z와 Y는 교집합이 없으므로 True
>>> z.isdisjoint(y)
True
## 순서는 상관 없습니다.
>>> y.isdisjoint(z)
True
>>>이번 포스팅까지 집합에 대한 메소드 및 연산을 다루어 보았습니다.
반응형'IT 이야기 공간 > 프로그램 언어' 카테고리의 다른 글
파이썬 제어문 – 조건문 if문 (0) 2020.06.24 파이썬 조건문 – 비교 논리 연산자 (2) 2020.06.23 파이썬 집합(set) 메소드로 추가, 제거하기 (0) 2020.06.20 파이썬 딕셔너리 복사 (1) 2020.06.19 파이썬 딕셔너리 요소 추가 수정 삭제 방법 (0) 2020.06.18