본문 바로가기

Python

Python 패킹(packing) 언패킹(unpacking) 총정리

728x90

리스트 언패킹

li = [1, 2, 3, 4]
a, b, c, d = li

 

스타를 활용한 리스트 언패킹

li = [1, 2, 3, 4]
a, *b, c= li # a = 1, b = [2, 3], c = 4

 

튜플 언패킹

tu = (1, 2, 3, 4)
a, b, c, d = tu

 

함수 인자 언패킹(딕셔너리  언패킹)

def my_function(a, b, c, d):
    print(a, b, c, d)
    
di = dict(a=1, b=2, c=3, d=4)
# * : key unpacking
# ** : value unpacking
my_function(*di) # a b c d
my_function(**di) # 1 2 3 4

 

* 주의 : **를 사용하여 value unpacking 시 함수의 매개변수 이름과 딕셔너리의 key 이름이 일치해야 한다.

 

함수 인자 언패킹(리스트 언패킹)

def my_function(a, b, c, d):
    print(a, b, c, d)
    
li = [1, 2, 3, 4]
my_function(*li) # my_function(li[0], li[1], li[2], li[3])