[Python] set(집합)

2023. 9. 12. 19:14Python

  • set은 수학적 개념 중 집합과 유사한 형태이다.
  • unique한 값(중복 X)만 올 수 있으며, 순서가 존재하지 않는다.
  • 괄호안에 다양한 형태의 객체가 올 수 있다.

 

  • 예시
s1 = set([1,2,3])
s2 = set('hello')
print(s1)
print(s2)

// result s1 : {1,2,3}
// result s2 : {'h', 'l', 'o', 'e'}

 

  • 순서가 없으므로 인덱스 값이 없으며, 필요시 튜플 or 리스트로 변환 후 사용 가능하다.

 

# 합집합, 교집합, 차집합

 

  • 주어진 객체
a = set([1,2,3])
b = set([1,3,5])

 

  • 합집합 : | 기호, union 함수 사용
c1 = a | b
c2 = a.union(b)

print(c1) // result : {1, 2, 3, 5}
print(c2) // result : {1, 2, 3, 5}

 

  • 차집합 : - 기호, difference 함수 사용
c1 = a - b
c2 = b - a
c3 = a.difference(b)
c4 = b.difference(a)

print(c1) // result : {1, 2}
print(c2) // result : {5}
print(c3) // result : {1, 2}
print(c4) // result : {5}

 

  • 교집합 : & 기호, intersection 함수 사용
c1 = a & b
c2 = a.intersection(b)

print(c1) // result : {1, 3}
print(c2) // result : {1, 3}

 

# 관련 함수

 

  • 주어진 객체는 위와 동일

 

  • add 함수 : 값 1개 추가하기 
a.add(4)
print(a) // result : {1, 2, 3, 4}

 

  • update 함수 : 값 여러개 추가하기
a.update([4, 5, 6])
print(a) // result : {1, 2, 3, 4, 5, 6}

 

  • remove 함수 : 특정 값 제거하기
a.remove(3)
print(a) // result : {1, 2}

'Python' 카테고리의 다른 글

[Python] 내장함수 (sum, abs, min, max, eval)  (0) 2023.09.17
[Python] Python이란?  (0) 2023.09.13
[Python] 제곱, 제곱근 처리하기  (0) 2023.09.12
[Python] join 함수, 슬라이싱  (0) 2023.09.08
[Python] for 반복문  (0) 2023.09.07