컴퓨터/Python
Python에서는 튜플의 개념의 자료형을 기본적으로 지원합니다.
튜플은 여러 개의 데이터를 묶은 하나의 집합으로서 존재하는 자료 형태입니다.
이미 알고 계실 확률이 높은 리스트 형태의 자료구조와 매우 유사합니다. 하지만 리스트와 튜플은 분명한 차이점이 존재합니다.
파이썬에서 튜플(Tuple)의 특징을 정리하자면 다음과 같습니다.
이 형태를 잘 보면 결국 튜플의 형태는 리스트처럼 데이터들의 묶음이지만, 변경되지 않는 형태를 사용할 때 용의 합니다.
튜플은 ()와 , 로 구분하여 선언합니다. 파이썬에서 튜플을 선언하는 방법은 아래와 같습니다.
v1 = () # 빈 튜플
v2 = (1,) # 하나의 데이터가 있는 튜플
v3 = (1,2,3) # 같은 타입의 데이터가 묶여있는 튜플
v4 = (1,2,'홍길동','이순신') # 여러 데이터 타입이 묶여있는 튜플
print(type(v1))
print(type(v2))
print(type(v3))
print(type(v4))
위와 같이 튜플의 형태로 변수명을 정의하고 튜플 형태의 자료형이 생성되었다면 이제 그 변수들은 '바뀌지 않는 값 데이터의 묶음'이 됩니다. 그렇다면 필요한 데이터들을 묶어 튜플 형태로 만들었다면 어떻게 사용할까요?
기존에 배운 인덱싱과 슬라이싱을 이용하여 튜플의 데이터를 꺼내어 사용할 수 있습니다.
인덱싱은 데이터의 묶음을 순서를 통해 찾기는 기법입니다. 예시를 통해 알아보도록 하겠습니다.
#튜플 선언 및 생성
t1 = ('튜플',5,2,'이름',10)
#튜플에서 데이터를 추출
data1 = t1[2]
print(t1[0])
print(data1)
위처럼 간단하게 튜플로 묶인 데이터에서 필요한 데이터를 꺼내올 수 있습니다.
튜플에서 특정 데이터가 아닌 연속된 값들을 꺼내오기 위해서 슬라이싱 기법 또한 사용 가능합니다.
#튜플 선언 및 생성
t1 = ('튜플',5,2,'이름',10)
#슬라이싱을 이용해서 데이터 추출
print(t1[2:])
튜플은 '바뀌지 않는 값 데이터의 묶음'이기 때문에 사용할 수 없습니다.
즉, 추가/제거/정렬/반전 등은 불가능합니다.
튜플의 길이는 len()을 통해 확인할 수 있습니다.
#튜플 선언 및 생성
t1 = ('튜플',5,2,'이름',10)
#튜플의 길이 구하기
print(len(t1))
리스트와 마찬가지로 튜플또한 요소의 인덱스 값을 찾을 수 있습니다.
#튜플 선언 및 생성
t1 = ('튜플',5,2,'이름',10)
#튜플의 인덱스 값 찾기
print(t1.index('이름'))
리스트와 마찬가지로 튜플또한 요소의 개수를 확인할 수 있습니다.
#튜플 선언 및 생성
t1 = ('튜플',5,2,'이름',10)
#튜플의 특정 요소 갯수 찾기
print(t1.count('이름'))
튜플과 리스트는 매우 비슷한 성질을 가지고 있지만 차이점이 분명하게 존재합니다.
튜플의 데이터를 리스트로 사용하고 싶거나 반대의 경우를 위해 함수를 지원하기도 합니다.
#튜플 선언 및 생성
t1 = ('튜플',5,2,'이름',10)
print(type(t1))
print(t1)
#t1 = list(t1) 이런 형태 또한 가능합니다.!
#print(type(t1))
#print(t1)
#튜플을 리스트로 바꾸기
l1 = list(t1)
print(type(l1))
print(l1)
#리스트를 튜플로 바꾸기
t2 = tuple(l1)
print(type(t2))
print(t2)
해당 포스트를 통해 튜플에 대해 이해하고 튜플과 리스트의 특징을 이해했으면 좋겠습니다.
Python - class1(객체 지향을 지원한다) (0) | 2022.01.18 |
---|---|
Python - Lambda (함수의 간단한 표현 방법) (0) | 2022.01.08 |
Python - 함수(Function) (0) | 2021.11.18 |
Python - 주석 (Comment) (0) | 2021.11.16 |
Python - Slicing(슬라이싱) - 연속적인 객체들의 요소를 가져오자 (0) | 2021.11.09 |
91년생 공학엔지니어의 개발일지
TODAY :
YESTER DAY :
TOTAL :
Commnet