Python

[Python] 튜플의 packing, unpacking 이해하기

YEJI ⍢ 2022. 10. 13. 16:27
728x90

튜플 packing은

튜플(or  리스트)의 값들을 묶는 것을 말합니다.

 

튜플 unpacking은 

묶인 값들을 푸는 것을 말합니다.

 

 

예제를 살펴봅시다.

아래 예제는 튜플을 출력하는 예제입니다.

num = (1, 2, 3, 4, 5)
print(num)

아래 예제는 하나의 튜플로 되어 있는 객체를 각각의 변수에 담는 코드입니다.

num = (1, 2, 3, 4, 5)
one, two, three, four, five = num

print(one, two, three, four, five)

각가의 변수가 아닌 어느 특정 부분의 객체들을 한 변수에 list로 담을 수도 있습니다.

num = (1, 2, 3, 4, 5)
one, two, *other = num

print(one, two, other)

변수 앞에 '*'를 붙여주면 여러 개의 객체를 하나의 객체로 관리해 줍니다.

 

 

 

 '*'는 아래 예제를 풀 때 중요합니다.

sum() 함수에 인자값을 넣어줄 때 list로 이루어진 numbers의 값들을 그냥 파라미터로 넘겨주게 되면 error가 뜹니다.

Error가 뜨지 않기 위해서는 list 이름 앞에 '*'를 붙여줘야 됩니다.

def sum(a, b, c):
    return a + b + c

numbers = [1, 2, 3]
print(sum(*numbers))

 

 ◡̈