Python/이론

88. [Python] 프로그래밍 기본 사항 : TUPLES AND SETS

천재단미 2025. 1. 17. 20:38
728x90
반응형

 

 

 

 

 

Python의 기본 데이터 구조 중 하나인 튜플(Tuple)과 집합(Set)은 데이터를 효율적으로 관리하고 처리하는 데 유용합니다. 이번 글에서는 튜플과 집합의 특징, 사용법, 주요 예제를 간단히 살펴보겠습니다.

 

 

 1.  튜플 (Tuple)

 

 

튜플은 변경할 수 없는(immutable) 데이터 구조입니다. 리스트와 유사하지만, 튜플은 생성 후 변경이 불가능하다는 점에서 다릅니다. 데이터를 고정된 상태로 유지해야 하는 경우 유용합니다.

튜플의 특징

  • 순서가 있음: 인덱싱과 슬라이싱이 가능.
  • 수정 불가: 한 번 생성된 튜플은 수정하거나 삭제할 수 없음.
  • 소괄호 사용: ()로 생성.

 

튜플 생성 및 사용 예제

# 튜플 생성
my_tuple = (1, 2, 3)
print(my_tuple)  # 출력: (1, 2, 3)

# 튜플 인덱싱
print(my_tuple[0])  # 출력: 1

# 튜플 슬라이싱
print(my_tuple[1:])  # 출력: (2, 3)

# 중첩 튜플
nested_tuple = (1, (2, 3), 4)
print(nested_tuple[1])  # 출력: (2, 3)

튜플의 활용

튜플은 주로 변경이 필요 없는 고정된 데이터를 저장하거나, 함수에서 여러 값을 반환할 때 사용됩니다.

# 여러 값 반환
def min_max(numbers):
    return min(numbers), max(numbers)

result = min_max([3, 1, 4, 1, 5])
print(result)  # 출력: (1, 5)


 

 2.  집합 (Set)

 

집합은 중복을 허용하지 않고, 순서가 없는 데이터 구조입니다.

데이터의 고유성(unique)을 보장하거나 교집합, 합집합 등의 집합 연산을 수행할 때 유용합니다.

 

집합의 특징

  • 순서가 없음: 인덱싱과 슬라이싱 불가.
  • 중복 불가: 동일한 값은 한 번만 저장.
  • 중괄호 사용: {}로 생성. 단, 빈 집합은 set()으로 생성.

집합 생성 및 사용 예제

# 집합 생성
my_set = {1, 2, 3, 3, 2}
print(my_set)  # 출력: {1, 2, 3}

# 집합 연산
set_a = {1, 2, 3}
set_b = {3, 4, 5}

# 합집합
print(set_a | set_b)  # 출력: {1, 2, 3, 4, 5}

# 교집합
print(set_a & set_b)  # 출력: {3}

# 차집합
print(set_a - set_b)  # 출력: {1, 2}

 

집합 활용

집합은 주로 중복 제거, 데이터 간 관계 비교(예: 교집합), 정렬이 필요 없는 데이터 관리에 활용됩니다.

# 중복 제거
numbers = [1, 2, 2, 3, 4, 4, 5]
unique_numbers = set(numbers)
print(unique_numbers)  # 출력: {1, 2, 3, 4, 5}


3. 튜플과 집합의 차이점

특징 튜플 (Tuple) 집합 (Set)

순서 순서가 있음 순서가 없음
중복 중복 허용 중복 불가
변경 변경 불가 변경 가능
사용 목적 고정된 데이터 저장 고유 값 관리 및 집합 연산

4. 정리

  • 튜플은 변경할 수 없는 순서가 있는 데이터 구조로, 데이터를 고정된 상태로 유지해야 할 때 유용합니다.
  • 집합은 중복을 허용하지 않는 순서가 없는 데이터 구조로, 고유한 값의 관리 및 집합 연산에 적합합니다.
728x90
반응형
home top bottom
}