본문 바로가기

파이썬 튜터리얼 정리 5.4 자료구조 - 집합(set)

파이썬 튜터리얼 정리 

5.4 자료구조 - 집합(set) 集合型

https://wikidocs.net/1015




* 집합


- 중복 없음

- 순서 없음


- 기본적인 용도 

: 멤버십 검사와 중복 엔트리 제거


- 합집합, 교집합, 차집합, 대칭 차집합 같은 수학적 연산 지원

 Set オブジェクトは、和 (union)、積 (intersection)、差 (difference)、対称差 (symmetric difference)といった数学的な演算もサポートしています。



집합 = { 원소들 }

집합 = set( 원소들)


>>> s1 = set([1,2,3])
>>> s1
{1, 2, 3}
 >>> s2 = set("Hello")
>>> s2
{'e', 'H', 'l', 'o'}


>>> basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
>>> print(basket)                      # show that duplicates have been removed
{'orange', 'banana', 'pear', 'apple'}
>>> 'orange' in basket                 # fast membership testing
True
>>> 'crabgrass' in basket
False

>>> # Demonstrate set operations on unique letters from two words
...
>>> a = set('abracadabra')
>>> b = set('alacazam')
>>> a                                  # unique letters in a
{'a', 'r', 'b', 'c', 'd'}
>>> a - b                              # letters in a but not in b
{'r', 'd', 'b'}
>>> a | b                              # letters in a or b or both
{'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'}
>>> a & b                              # letters in both a and b
{'a', 'c'}
>>> a ^ b                              # letters in a or b but not both
{'r', 'd', 'b', 'm', 'z', 'l'}


>>> a = {x for x in 'abracadabra' if x not in 'abc'}
>>> a
{'r', 'd'}



* 공집합을 만드려면 'set ( )'을 사용해야 함. ( '{}' : 빈 딕셔너리 생성)