반응형
Python에서 Set은 순서가 없고, 중복되지 않는 요소들로 구성된 자료형입니다. Set은 중괄호({})로 표현하며, 쉼표(,)로 구분합니다.
예를 들어, 아래와 같이 Set을 생성할 수 있습니다.
# 빈 Set 생성
numbers = set()
# 요소를 포함하는 Set 생성
numbers = {1, 2, 3, 4, 5}
# 중복되는 요소를 포함하는 Set 생성
numbers = {1, 2, 2, 3, 4, 5} # {1, 2, 3, 4, 5}
Set 요소에 접근하는 방법은 인덱싱(indexing)을 사용할 수 없습니다. Set은 순서가 없기 때문입니다.
# Set 요소 접근 (X)
print(numbers[0]) # TypeError
Set은 요소를 추가, 삭제, 수정 할 수 있습니다.
# Set 요소 추가
numbers.add(6)
# Set 요소 삭제
numbers.remove(4)
# Set 요소 수정 (X)
numbers[0] = 7 # TypeError
Set은 다양한 함수를 제공하며, 이를 활용하면 편리하게 Set을 사용할 수 있습니다.
# Set 길이
print(len(numbers)) # 5
# Set 요소 존재 여부
print(3in numbers) # True
print(7 in numbers) # False
#Set 연산
even = {2, 4, 6, 8}
odd = {1, 3, 5, 7}
#합집합
print(even.union(odd)) # {1, 2, 3, 4, 5, 6, 8, 7}
#교집합
print(even.intersection(odd)) # set()
#차집합
print(even.difference(odd)) # {2, 4, 6, 8}
#객체 복사
even_copy = even.copy()
#객체 초기화
even.clear()
아래는 예시를 공유해드려요.
# 중복되지 않는 요소들로 구성된 Set 생성
fruits = {"apple", "banana", "orange"}
# 요소 추가
fruits.add("mango")
# 요소 삭제
fruits.remove("banana")
# 요소 존재 여부 확인
print("orange" in fruits) # True
# 세트 길이
print(len(fruits)) # 3
# 합집합
fruits2 = {"kiwi", "orange", "grape"}
print(fruits.union(fruits2)) # {"orange", "apple", "mango", "kiwi", "grape"}
# 교집합
print(fruits.intersection(fruits2)) # {"orange"}
# 차집합
print(fruits.difference(fruits2)) # {"apple", "mango"}
반응형
'파이썬' 카테고리의 다른 글
파이썬 슬라이싱 - 문자열, 리스트, 튜플 (1) | 2023.01.24 |
---|---|
파이썬 자료형 - 문자열 이해하기 (0) | 2023.01.23 |
파이썬 자료형 - 딕셔너리 (dictionary) 이해하기 (0) | 2023.01.23 |
파이썬 자료형 - 튜플 (tuple) 이해하기 (0) | 2023.01.23 |
파이썬 자료형 - 리스트 이해하기 (0) | 2023.01.23 |
댓글