파이썬의 자료형 Set에 대해 점프투파이썬을 보고 개인적으로 정리한 자료
- Key 값의 중복을 허용하지 않는다.
- 순서가 없다(Unordered).
1. 집합 생성하기
s1 = set([1,2,3]) # 리스트로 부터 set함수 통해 집합 생성
s2 = set("hello") # 문자열로 부터 set함수 통해 집합 생성
s3 = {1,2,3}
s4 = {'ab','cde','fg'}
display(s1)
display(s2)
display(s3)
display(s4)
{1, 2, 3}
{'o', 'e', 'h', 'l'}
{1, 2, 3}
{'fg', 'cde', 'ab'}
2. 리스트나 튜플로 변환
- 만약 set 자료형에 저장된 값을 인덱싱으로 접근하려면 다음과 같이 리스트나 튜플로 변환한후 해야 한다.
s1 = set([1,2,3])
l1 = list(s1)
t1 = tuple(s1)
display(l1)
display(l1[0])
display(t1)
display(t1[0])
[1, 2, 3]
1
(1, 2, 3)
1
3. 교집합 구하기
s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([4, 5, 6, 7, 8, 9])
s3 = s1 & s2
s4 = s1.intersection(s2)
display(s3)
display(s4)
{4, 5, 6}
{4, 5, 6}
4. 합집합 구하기
s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([4, 5, 6, 7, 8, 9])
s3 = s1 | s2
s4 = s1.union(s2)
display(s3)
display(s4)
{1, 2, 3, 4, 5, 6, 7, 8, 9}
{1, 2, 3, 4, 5, 6, 7, 8, 9}
5. 차집합 구하기
s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([4, 5, 6, 7, 8, 9])
s3 = s1 - s2
s4 = s1.difference(s2)
display(s3)
display(s4)
{1, 2, 3}
{1, 2, 3}
6. 값 1개 추가하기
s1 = set([1, 2, 3])
s1.add(4)
display(s1)
{1, 2, 3, 4}
7. 값 여러개 추가하기
s1 = set([1, 2, 3])
s1.update([4, 5, 6])
display(s1)
{1, 2, 3, 4, 5, 6}
8. 특정값 제거하기
s1 = set([1, 2, 3])
s1.remove(2)
display(s1)
{1, 3}
'Language > python' 카테고리의 다른 글
[ Python 자료형 ] numpy 관리 (0) | 2019.12.08 |
---|---|
[ Python 자료형 ] Dataframe 관리 (0) | 2019.12.08 |
[ Python 자료형 ] Dictionary (0) | 2019.12.08 |
[ Python 자료형 ] Tuple (0) | 2019.12.08 |
[ Python 자료형 ] 문자열 관리 (0) | 2019.12.06 |