Done is Better Than Perfect

[알고리즘] set method 본문

공부/개발공부

[알고리즘] set method

jimingee 2021. 7. 16. 22:38

collection 자료구조 - 데이터를 연관시키지 않고 모아두는 컨테이너

 파이썬에서는 set, dictionary가 있다.

 

오늘은 우선 set의 method와 사용 예시를 알아보도록 하자!


# set; 반복 가능, 가변적, 중복 X, 정렬 X, 인덱스 연산 X -> 멤버쉽 테스트(in), 중복 항목 제거에 사용

 

SET의 method

1) A.add(x) : set A 에 x가 없을 추가

# add: 추가
fruits = {"apple","banana","orange"}
fruits.add("mango")
print(fruits)
# {'apple', 'orange', 'mango', 'banana'}

 

2) A.clear( ) : set 전부 삭제

# clear: 삭제
fruits.clear()
print(fruits)
# set()

 

3) A.union(B) : set의 합집합 반환 [연산결과를 복사본으로 반환]

# union: 합집합 반환
fruits = {"apple","banana","orange"}
fruits = fruits.union({"kiwi","strawberry","banana"})
print(fruits)
# fruits = {"apple","banana","orange"}

+) A.update(B)도 set의 합집합을 반환 [복사본 반환 X / A에 B를 추가한다.]

 

 

4) A.intersection(B) : set의 교집합 반환 [연산결과를 복사본으로 반환]

# intersection: 교집합 반환
yummy = {"apple","samsung","vega"}
yummy_fruits = fruits.intersection(yummy)
print(yummy_fruits)
# {'apple'}

+) & 연산자도 같은 역할 ( A & B)

 

 

5) A.difference(B) : set의 차집합 반환 [연산결과를 복사본으로 반환]

# difference: 차집합 반환
fruit_yummy = fruits.difference(yummy)
print(fruit_yummy)
# {'orange', 'banana', 'kiwi', 'strawberry'}

+) - 연산자도 같은 역할 ( A - B)

 

 

6) A.discard(X) : 항목 X 제거 

# discard: 특정 항목 제거
fruits = {'apple', 'banana', 'kiwi', 'orange', 'strawberry'}
fruits.discard('apple')
print(fruits)
# {'banana', 'orange', 'strawberry', 'kiwi'}

 

7) A. remove(X) : 항목 X 제거 [제거할 항목 없는 경우 KeyError]

# remove: 특정 항목 제거 - 제거할 항목 없는 경우 KeyError
fruits.remove('kiwi')
print(fruits)
# {'banana', 'strawberry', 'orange'}

 

8) A.pop( ) : 무작위로 항목 제거

# pop: 무작위로 항목 제거 - set이 비어 있는 경우 KeyError
fruits.pop()
print(fruits)
# {'banana', 'orange'}

 

 

Comments