집합(Set)
집합(Set)은 수학의 집합 개념을 바탕으로 만들어졌으며 교집합, 합집합, 차집합 등 다양한 집합 연산을 지원합니다. 중괄호({})로 데이터를 감싸며 순서가 없고 중복된 값을 허용하지 않는 자료형입니다. 예를 들어 {1, 3, 3, 2}이라는 세트는 실제 {1, 2, 3}으로 저장됩니다.
중복된 값에 대한 세트 예시
# 세트 생성
set01 = {1, 2, 3, 4, 5}
print('set01 = ', set01)
# 중복된 값이 있을 경우
set02 = {1, 3, 3, 2, 2}
print('set02 = ', set02)
더보기
set01 = {1, 2, 3, 4, 5}
set02 = {1, 2, 3}
집합 연산에 대한 세트 예시
set01 = {1, 2, 3, 4, 5}
set02 = {1, 3, 3, 2, 2}
# 합집합
print(set01 | set02)
# 교집합
print(set01 & set02)
# 차집합
print(set01 - set02)
더보기
{1, 2, 3, 4, 5}
{1, 2, 3}
{4, 5}
set() 함수
중괄호 외에 set() 함수를 사용하면 집합 자료형을 만들 수 있습니다. 이를 이용하여 리스트에서 중복된 요소를 제거할 때 set() 함수를 사용하기도 합니다. 아래는 예시입니다.
set()함수 예시
my_list = [1, 2, 2, 3, 4, 4, 5]
unique_set = set(my_list)
print(unique_set)
활용 사례 : 프로그램 선호도 설문 조사에서 중복된 데이터를 제거하고자 하는 경우
responses = ["Python", "Java", "Python", "C++", "Java", "Python"]
unique_responses = set(responses)
print(unique_responses)
더보기
{'Python', 'C++', 'Java'}
NOTE : 집합(set)은 인덱싱이 없다! 특정 요소 접근 x
집합(set)은 순서가 없기 때문에 인덱싱을 사용할 수가 없습니다. 따라서 특정 요소에 접근하고자 한다면 세트를 리스트로 변환하거나 반복문을 통해 처리해야 합니다.
반복문을 통한 집합(set) 요소 접근 예시
▪list() 함수는 집합(set)을 리스트(list)로 변경해주는 함수
my_set = {1, 2, 3, 4, 5}
my_list = list(my_set)
for item in my_set:
print(item)
Results
1
2
3
4
5
※ 이 글이 도움이 되었다면 "👆🏻구독"과 "🤍공감" 버튼을 클릭해주세요. 클릭 한번이 글 쓰는데 큰 힘이 됩니다.