Programming/Python

[코딩도장-파이썬] 튜플(Tuple)

Supreme_YS 2020. 11. 10. 22:49

._튜플 = (값, 값, 값)

   튜플 = 값, 값, 값

튜플은 리스트처럼 요소를 일렬로 저장하지만, 안에 저장된 요소를 변경, 추가, 삭제를 할 수 없다. 간단하게 읽기 전용 리스트라고 할 수 있다. 변수에 값을 저장할 때 ( )(괄호)로 묶어주면 튜플이 되며 각 값은 ,(콤마)로 구분한다. 또는, 괄호로 묶지 않고 값만 콤마로 구분해도 튜플이 생성된다.

예. a = (1, 2, 3, 4, 5)
     b = 1, 2, 3, 4, 5

 

._튜플도 리스트처럼 여러 자료형을 섞어서 저장해도 된다.

예. person = ('Jacob', 29, 173, True)

 

._튜플을 만든 이유? 파이썬 프로그래밍에서 튜플을 사용하는 쪽이 더 유리한 경우도 있기 때문이다. 보통 튜플은 요소가 절대 변경되지 않고 유지되어야 할 때 사용한다. 반면 요소를 자주 변경해야 할 때는 리스트를 사용한다. 보통 실무에서는 요소를 변경하는 경우가 많기 때문에 튜플보다 리스트를 더 자주 사용하는 편

 

._튜플 = (값, )

   튜플 = 값,

요소가 한 개 들어있는 튜플 생성, 

예. c = (27, )
    d = 27,

 

._리스트와 마찬가지로 튜플도 range를 사용하여 튜플을 만들 수 있다. 

예. e = tuple(range(10))  #1~9까지 생성
     f = tuple(range(1, 10)) #1~9까지 생성
     g = tuple(range(1, 10, 2))  #1, 3, 5, 7, 9 생성

._튜플을 --> 리스트로, 리스트를 --> 튜플로 만들기

튜플과 리스트는 요소를 변경, 추가, 삭제할 수 있는지 없는지만 다를 뿐 기능과 형태는 같다. 따라서 튜플을 리스트로 만들거나 리스트를 튜플로 만들 수도 있다.

 

예.

#from_list_to_tuple
ab = [1, 2, 3]
tuple(ab)
print(tuple(ab))

#from_tuple_to_list

cd = (4, 5, 6)
list(cd)
print(list(cd))

 

._list와 tuple 안에 문자열을 넣으면 문자 리스트, 문자 튜플이 생성된다.

예. 

#string in list
string_list = list('hello')
print(string_list)

#string in tuple
string_tuple = tuple('Python')
print(string_tuple)

 

결과.

문자열 리스트와 튜플

._리스트와 튜플을 사용하면 변수 여러 개를 한 번에 만들 수 있다. 이때 변수의 개수와 리스트(튜플)의 요소 개수는 같아야 한다.

 

예.

#make_multi_variable
z, x, c = [1, 2, 3]
print(z, x, c)

t, y, u = (4, 5, 6)
print(t, y, u)

결과값

 

._리스트 & 튜플 언패킹(unpacking) : 리스트와 튜플의 요소를 변수 여러 개에 할당하는 것

._리스트 패킹(list packing)과 튜플 패킹(tuple packing)은 변수에 리스트 또는 튜플을 할당하는 것

예.

#list_tuple_unpacking
x = [1, 2, 3]
a, b, c = x #unpacking

y = (4, 5, 6)
d, e, f = y #unpacking

z = [1, 2, 3] #list_packing
x = (1, 2, 3) #tuple_packing
v = 1, 2, 3 #tuple_packing 

 

결과값