Python

(파이썬) 내장함수 set(세트,셋,집합) 합집합 교집합 차집합 부분집합

코딩ABC 2023. 11. 17. 17:59
반응형

파이썬의 set은 고유한 원소들의 집합을 나타내는 데이터 구조이며, 여러 가지 특징이 있습니다.

  1. 고유한 원소들: Set은 중복된 원소를 허용하지 않습니다. 각 원소는 유일해야 합니다.
  2. 순서가 없음: Set은 원소들의 순서를 유지하지 않습니다. 따라서 인덱스나 순서로 원소에 접근할 수 없습니다.
  3. 가변성(Mutable): Set은 가변형(mutable)이므로 원소를 추가하거나 제거할 수 있습니다.
  4. 수학적 연산 지원: Set은 합집합, 교집합, 차집합과 같은 수학적 연산을 지원합니다.

아래는 간단한 사용 예시입니다.

# 빈 set 생성
my_set = set()

# 원소 추가
my_set.add(1)
my_set.add(2)
my_set.add(3)
print(my_set)

# 중복된 원소는 무시됨
my_set.add(2)
print(my_set)

# 원소 제거
my_set.remove(3)
print(my_set)

(Output)

{1, 2, 3}
{1, 2, 3}
{1, 2}

 

다음은 합집합, 교집합, 차집합 구합니다.

set1 = {1, 2, 3}
set2 = {3, 4, 5}

union_set = set1.union(set2)  # 합집합
intersection_set = set1.intersection(set2)  # 교집합
difference_set = set1.difference(set2)  # 차집합

print('set1:', set1)
print('set2:', set2)
print('합집합:', union_set)
print('교집합:', intersection_set)
print('차집합:', difference_set)

(Output)

set1: {1, 2, 3}
set2: {3, 4, 5}
합집합: {1, 2, 3, 4, 5}
교집합: {3}
차집합: {1, 2}

(파이썬) set() 집합 _ 합집합 교집합 차집합 함수

 

리스트를 집합(set)으로 만들 수 있습니다.

s1 = set([1,2,3,4,5])
print(type(s1))
print(s1)

파이썬: 리스트를 집합으로 변환

 

 

문자열을 집합으로 만들 수 있습니다.

s1 = set('Python')
print(s1)

파이썬, 문자열을 집합으로 변환

 

 

집합(set)에는 다음과 같은 연산 또는 함수(메소드)가 있습니다. 

수 또는 메소드 설명
len(s1) 집합 s1의 요소 개수
e in s1 e가 집합 s1에 있으면 True를 반환
s1.add(e) e를 집합에 추가
s1.remove(e)
s21.discard(e)
e를 집합에서 삭제
s1.clear() 집합의 모든 요소를 삭제
s1.issubset(s2) s1s2의 부분 집합이면 True를 반환
s1 == s2
s1 != s2
집합 s1s2가 같으면 True를 반환
집합 s1s2가 같지 않으면 True를 반환
s1.union(s2)
s1 | s2
합집합
s1.intersection(s2)
s1 & s2
교집합
s1.diference(s2)
s1 – s2
차집합

 

반응형