본문 바로가기
Computer & Program/python

[python] Set - 01

by TDRemon 2024. 1. 19.
반응형

안녕하세요. TDR입니다.

오늘은 python에서의 set(집합) 자료구조의 기본적인 것에 대해 정리해 보겠습니다. 

집합 연산이 많아 2번에 나눠서 정리하겠습니다.

## 생성
set_object = set()
set_object = set([1, 2, 3])	# set_object = {1, 2, 3}
set_object = set("apple")	# set_object = {'a', 'p', 'l', 'e'}


## 삽입
# 하나의 값만 추가 가능
set_obejct.add(2)
# 여러개의 값 추가
set_obejct.update({2, 4, 8})


## 삭제
# 값이 없으면 KeyError 발생
set_obejct.remove(2)
# 값이 없어도 Error 발생 안함
set_obejct.discard(2)
# set에서 임의값 꺼내기
set_object = s1.pop()


## 예시 값
s1 = {1, 2, 3}
s2 = {3, 4, 5}

## 집합 연산
# 합집합
set_obejct = s1 | s2
set_obejct = set.union(s1,s2)
set_obejct = s1.union(s2)
set_obejct = s2.union(s1)
# 연산 결과를 반환하지 않고 s1의 값을 수정
s1 |= s2	
s1.update(s2)
# set_obejct = {1, 2, 3, 4, 5}

# 교집합
set_object = s1 & s2
set_obejct = set.intersection(s1, s2)
# 연산 결과를 반환하지 않고 s1의 값을 수정
s1 &= s2	
s1.intersection_update(s2)
# set_obejct = {3}

# 차집합
set_object = s1 - s2
set_obejct = set.difference(s1,s2)
# 연산 결과를 반환하지 않고 s1의 값을 수정
s1 -= s2	
s1.difference_update(s2)
# set_obejct = {1, 2}


## 특징
# 순서 없음. 중복 안됨. 값 형태 상관 없음.
# 순서가 없기 때문에 당연히 index 접근 안됨
# list와 마찬가지로 clear() 함수로 모두 값들 제거 가능
set_object.clear()

나머지는  Set-02에서 진행하겠습니다.

 

[python] Set - 02

안녕하세요. TDR입니다. Set - 01(https://tdremon.tistory.com/entry/python-Set-01)에 이어서 나머지 집합 연산을 정리해 보겠습니다. ## 집합 연산 # 예시 값 s1 = {1, 2, 3} s2 = {3, 4, 5} # 대칭차집합 set_object = s1 ^ s2 s

tdremon.tistory.com

 

반응형

'Computer & Program > python' 카테고리의 다른 글

[python] Dictionary  (0) 2024.01.24
[python] Copy (Shallow vs Deep)  (0) 2024.01.19
[python] Set - 02  (0) 2024.01.19
[python] Tuple  (0) 2024.01.16
[python] List  (0) 2024.01.16

댓글