Akashic Records

3.4 집합 본문

Python for Beginners

3.4 집합

Andrew's Akashic Records 2023. 3. 17. 13:14
728x90

파이썬의 집합(set)은 순서가 없고 중복된 요소가 없는 컬렉션입니다. 집합은 중괄호({})를 사용하여 생성하거나 set() 함수를 사용할 수 있습니다. 집합은 수학적 집합의 개념을 구현한 것으로, 합집합, 교집합, 차집합 등의 집합 연산을 수행할 수 있습니다.

집합에 대한 상세 설명과 예시 코드는 다음과 같습니다:

집합 생성: 중괄호({})를 사용하여 집합을 생성하거나 set() 함수를 사용할 수 있습니다.


예시 코드 1 - 집합 생성:

my_set = {1, 2, 3, 4, 5}
print(my_set)  # 출력: {1, 2, 3, 4, 5}

empty_set = set()
print(empty_set)  # 출력: set()

# 중복된 요소는 자동으로 제거됩니다.
duplicate_set = {1, 2, 2, 3, 3, 3}
print(duplicate_set)  # 출력: {1, 2, 3}

 

집합에 요소 추가: add() 메서드를 사용하여 집합에 요소를 추가할 수 있습니다.

 

예시 코드 2 - 집합에 요소 추가:

my_set = {1, 2, 3}

my_set.add(4)
print(my_set)  # 출력: {1, 2, 3, 4}

 

집합에서 요소 삭제: remove() 또는 discard() 메서드를 사용하여 집합에서 요소를 삭제할 수 있습니다.

 

예시 코드 3 - 집합에서 요소 삭제:

my_set = {1, 2, 3, 4}

my_set.remove(1)  # 요소가 없으면 KeyError 발생
my_set.discard(2)  # 요소가 없어도 에러가 발생하지 않음
print(my_set)  # 출력: {3, 4}

 

집합 연산: 집합 간의 합집합, 교집합, 차집합, 대칭차집합을 구할 수 있습니다.

 

예시 코드 4 - 집합 연산:

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

# 합집합: union() 메서드 또는 | 연산자 사용
union_set = set1.union(set2)
print(union_set)  # 출력: {1, 2, 3, 4}
print(set1 | set2)  # 출력: {1, 2, 3, 4}

# 교집합: intersection() 메서드 또는 & 연산자 사용
intersection_set = set1.intersection(set2)
print(intersection_set)  # 출력: {2, 3}
print(set1 & set2) #출력: {2, 3}



# 차집합: difference() 메서드 또는 - 연산자 사용
difference_set = set1.difference(set2)
print(difference_set) # 출력: {1}
print(set1 - set2) # 출력: {1}

# 대칭차집합(합집합에서 교집합을 제외한 부분): symmetric_difference() 메서드 또는 ^ 연산자 사용
symmetric_difference_set = set1.symmetric_difference(set2)
print(symmetric_difference_set) # 출력: {1, 4}
print(set1 ^ set2) # 출력: {1, 4}

 

집합 관련 메서드와 내장 함수:

예시 코드 5 - 집합 관련 메서드와 내장 함수:

my_set = {1, 2, 3, 4, 5}

# 길이 확인: len() 함수 사용
length = len(my_set)
print(length)  # 출력: 5

# 최소값 확인: min() 함수 사용
minimum = min(my_set)
print(minimum)  # 출력: 1

# 최대값 확인: max() 함수 사용
maximum = max(my_set)
print(maximum)  # 출력: 5

# 합계 구하기: sum() 함수 사용
total = sum(my_set)
print(total)  # 출력: 15

# 모든 요소 삭제: clear() 메서드 사용
my_set.clear()
print(my_set)  # 출력: set()


위의 예시 코드들은 파이썬 집합의 주요 기능들과 다양한 메서드들을 보여줍니다. 집합은 중복 없이 요소를 저장하고, 집합 간의 연산을 수행하기에 유용한 자료구조입니다. 이러한 기능들을 활용하여 집합을 사용하여 다양한 작업을 수행할 수 있습니다.

 

 

728x90

'Python for Beginners' 카테고리의 다른 글

4.1 파일 읽기(open 함수)  (0) 2023.03.20
3.5 컬렉션 모듈  (0) 2023.03.17
3.3 딕셔너리  (0) 2023.03.17
3.2 튜플  (0) 2023.03.17
3.1 리스트  (0) 2023.03.17
Comments