[Python] 파이썬_집합

집합 : 순서가 없고, 인덱싱, 슬라이싱X, 중복을 허용하지 않는다.

변수 = set([1,2,3])
튜플이 출력될 때는 {} 형식으로 출력된다. 아무리 같은 문자열이 들어가도 하나의 b인 원소만 기억(저장)
가령 set에 'abbbbc' 가 들어간다면 {'a','b','c'} 로 출력될 것이다. 

교집합, 차집합, 합집합
"""
A=set(['a',1,4,'c'])
B=set([1,'c','4',2])
"""

-교집합 : 공통적인 집합
각각 정수, 문자, 실수 동일한 데이터가 없으면 교집합이 되지 않는다. 
"""
A&B
>>> {1, 'c'}
"""
A.intersection(B) 로 교집합 리턴받는 것도 가능하다 .

-합집합
'|' = OR
union 메서드
A.union(B)
'""
A|B
A.union(B)
>>> {1, 2, '4', 4, 'a', 'c'}
"""

- 차집합 : 연산 순서가 데이터를 결정한다. 
'-' = 차감
difference 메서드
"""
B-A
>>> {'4', 2}
A-B
>>> {'a', 4}
B.difference(A)
>>> {'4', 2}
"""

-데이터를 추가하는 경우 :  add() 사용
-여러개의 데이터를 추가하는 경우 : update() 인자로 수정할 값 벡터형태로 넣어도 됨 
-수정할 것.difference_update(data) : 들어간 데이터로 수정하기 위해서 사용

isdisjoin() : 두 집합에 공통 원소를 가지고 있는지 확인하기 위해서 사용한다. 리턴 값은 True,  False
"""
A.isdisjoint(B)
>>> False
"""

issubset() : 부분집합
"""
A.issubset(B)
>>> False
{1,'c'}.issubset(B)
>>> True
"""




댓글