파이썬에서 튜플(Tuple)과 집합(Set)은 리스트(List)외 함께 데이터를 다루는데 있어 매우 유용한 자료형입니다. 두 자료형이 어떤 특징을 가지고 있는지 알아보겠습니다.
튜플(Tuple)
튜플은 리스트와 매우 유사하지만, 한 번 생성되면 내부 요소를 변경할 수 없다는 점이 다릅니다. 따라서 값이 변하지 않아야 하는 경우에 사용됩니다. 튜플은 괄호로 둘러싸이며, 각 요소는 쉼표로 구분됩니다.
튜플은 다음과 같은 경우에 사용됩니다.
- 데이터 변경이 필요 없는 경우
- 함수에서 여러 값을 리턴할 때
- 딕셔너리의 키로 사용할 때 (키는 불변(immutable)해야 하기 때문)
다음은 튜플을 생성하는 예시입니다.
my_tuple = (1, 2, 3)
튜플은 리스트와 비슷하게 인덱스를 사용하여 요소에 접근할 수 있습니다. 또한 리스트와 마찬가지로 for 루프를 사용하여 요소를 순회할 수 있습니다.
for num in my_tuple:
print(num)
집합(Set)
집합은 중복을 허용하지 않는 자료형입니다. 따라서 유일한 값을 저장하고자 할 때 사용됩니다. 또한 집합은 순서가 없기 때문에 인덱스로 요소에 접근할 수 없습니다.
집합은 중괄호로 둘러싸이며, 각 요소는 쉼표로 구분됩니다. 다음은 예시입니다.
my_set = {1, 2, 3}
집합은 다음과 같은 경우에 사용됩니다.
- 중복된 값을 제거하고 유일한 값을 추출할 때
- 두 집합의 합집합, 교집합, 차집합을 구할 때
Python에서는 튜플과 집합 모두 다양한 연산을 지원합니다. 예를 들어, 두 집합의 교집합을 구하고자 한다면 다음과 같이 사용할 수 있습니다.
set1 = {1, 2, 3}
set2 = {2, 3, 4}
intersection = set1.intersection(set2)
- 교집합 / 합집합 / 차집합도 구할 수 있습니다.
a = ['사과','감','수박','참외','딸기']
b = ['사과','멜론','청포도','토마토','참외']
print(a & b) # 교집합
print(a | b) # 합집합
student_a = ['물리2','국어','수학1','음악','화학1','화학2','체육']
student_b = ['물리1','수학1','미술','화학2','체육']
set_a = set(student_a)
set_b = set(student_b)
print(set_a-set_b)
Python에서 튜플과 집합은 매우 유용한 자료형입니다. 튜플은 값이 변하지 않아야 하는 경우, 집합은 중복이 허용되지 않는 경우에 사용됩니다. 또한 Python에서는 튜플과 집합 모두 다양한 연산을 지원하므로 많은 곳에서 활용될 수 있습니다.
'Language > Python' 카테고리의 다른 글
<파이썬 기본 문법> -6- f-string (0) | 2023.03.02 |
---|---|
<파이썬 기본 문법> -4- 함수 (0) | 2023.02.26 |
<파이썬 기본 문법> -3- 조건문, 반복문 (0) | 2023.02.26 |
<파이썬 기본 문법> -2- 리스트, 딕셔너리 (0) | 2023.02.26 |
<파이썬 기본 문법> -1- 변수, 자료형 (0) | 2023.02.23 |