개발 이야기/Python

Python - 06. 튜플(Tuple) 자료형

Crazy Lazy 2021. 7. 17. 19:21

1. 튜플(tuple) 정의 및 특징.

- 리스트와 거의 유사.

- ( ) 로 감싸서 표현. (빈 값 제외하고는 생략 가능)

- 한 번 설정된 값은 변경(추가, 수정, 삭제)이 불가.

- 1개의 값일 땐 반드시 , 로 끝냄.

 

튜플(tuple) 생성 예시)

a=()			# 빈 값 생성.
b=(1,)			# 1개의 값 생성. (1개의 값일 땐 반드시 , 로 끝내야 tupple 됨. 생략 시 int 됨)
c=(1,2,3)		# 여러 개의 값 생성.
d=1,			# () 생략 가능.
e=1,2,3			# () 생략 가능.
f=('a','b',(1,2))	# 중첩 생성 가능.

 

2. 인덱싱.

다른 자료형과 마찬가지로, 0부터 시작하고 -1은 마지막을 의미.

a=(1,2,'a','b')
a[0]		# 결과 : 1
a[-1]		# 결과 : 'b'

 

3. 슬라이싱.

a=(1,2,'a','b')
a[2:]		# 결과 : ('a', 'b')
a[:2]		# 결과 : (1, 2)
a[1:2]		# 결과 : (2,)

 

4. 연산자.

a=(1,2,'a','b')
b=(2,3,4)

# 병합 (+)
a+b		# 결과 : (1, 2, 'a', 'b', 2, 3, 4)

# 반복 (*)
b*2		# 결과 : (2, 3, 4, 2, 3, 4)

 

5. 그 외 튜플(tuple) 활용법.

a=1
b=2
c=3
d=4

# 값 일괄 교환 시
a,b=b,a		# (a,b) 값이 담긴 튜플 생성, (b,a) 값이 담긴 튜플 생성, a의 값은 b 로 b의 값은 a로 동시에 대체됨.
print(a,b,c,d)

# 값 일괄 교환 예시2
a,b=c,d		# (a,b) 값이 담긴 튜플 생성, (c,d) 값이 담긴 튜플 생성, a의 값은 c 로 b의 값은 d로 동시에 대체됨.
print(a,b,c,d)

# 함수의 매개변수로 사용
def tupple_test(z,y,*x):
	print(z,y,x)

tupple_test(1,2,3,4,5,6)	# 결과 : 1 2 (3, 4, 5, 6)


# 튜플 생성.
e=(1,2,3)
print(e,type(e))

# 튜플 요소 수 확인.
len(e)

# 튜플에서 리스트로 형변환 예시
f=list(e)
print(f,type(f))	# 결과 : [1, 2, 3] <class 'list'>

# 리스트에서 튜플로 형변환 예시
g=tuple(f)
print(g,type(g))	# 결과 : (1, 2, 3) <class 'tuple'>