WeniVooks

검색

베이스캠프 파이썬

셋(set)

1. 셋(Set)이란?

셋은 중복을 허용하지 않는 순서 없는 자료형입니다. 수학의 집합과 비슷한 개념으로 생각할 수 있습니다.

my_set = {1, 2, 3, 3, 4, 4, 5} print(my_set) # 중복된 값은 하나만 표시됩니다
1.1 셋 생성

셋은 중괄호 {} 안에 쉼표로 구분된 값들을 넣어 생성합니다. 또는 set() 함수를 사용할 수도 있습니다.

fruits = {'apple', 'banana', 'cherry'} numbers = set([1, 2, 2, 3, 4, 4, 5]) print("과일 셋:", fruits) print("숫자 셋:", numbers)
1.2 셋의 특징

셋은 중복을 허용하지 않고, 순서가 없습니다. 따라서 인덱싱으로 접근할 수 없습니다.

numbers = {1, 2, 3, 4, 5, 5, 4, 3, 2, 1} print(numbers) # 중복이 제거되고 순서가 무작위로 출력됩니다 print(numbers[0]) # 에러 발생 print("에러:", e)
1.3 셋 연산

셋은 수학의 집합 연산을 지원합니다.

set1 = {1, 2, 3, 4, 5} set2 = {4, 5, 6, 7, 8} print("합집합:", set1 | set2) print("교집합:", set1 & set2) print("차집합:", set1 - set2)
1.4 셋 수정

셋에 요소를 추가하거나 제거할 수 있습니다.

fruits = {'apple', 'banana', 'cherry'} fruits.add('orange') # 요소 추가 print("오렌지 추가 후:", fruits) fruits.remove('banana') # 요소 제거 print("바나나 제거 후:", fruits)
1.5 셋 메서드

셋에서 자주 사용되는 메서드들이 있습니다.

set1 = {1, 2, 3, 4, 5} set2 = {4, 5, 6, 7, 8} print("대칭 차집합:", set1.symmetric_difference(set2)) print("set1이 set2의 부분집합인가?:", set1.issubset(set2)) print("두 집합에 겹치는 요소가 있는가?:", set1.isdisjoint(set2))

셋은 중복을 제거하거나 집합 연산을 수행할 때 유용하게 사용됩니다. 특히 데이터의 유일성을 확인하거나 여러 데이터의 공통점을 찾을 때 효과적입니다.

{"packages":["numpy","pandas","matplotlib","lxml"]}
6.3 딕셔너리(dict)6.5 중간고사