본문 바로가기

Python

Python tuple unpacking 파이썬 튜플 언팩킹

반응형

Python에서 tuple 만드는 방법

 
Tuple은 만들어진 후 수정할 수 없는 리스트
 
Comma (콤마)를 사용해서 숫자들을 나열하면 tuple (튜플)이 된다.
t = 1, 2
  • 숫자 2개로 이루어진 tuple
 
t = 1,
  • 숫자 1개로 이루어진 tuple.
  • 반드시 comma 끝에 있어야 한다.
 
t = ()
  • Empty tuple을 만든다.
 

Unpacking tuple (언팩킹 튜플)

 
Tuple의 값들을 개별 변수에 할당: 이 작없을 unpacking이라고 한다.
 
a, b, c = 1, 2, 3
  • Tuple (1,2,3)에 대해서, a, b, c에 각각 1, 2, 3을 할당한다.
  • 왼쪽에는 tuple 표시 ( )를 하지 않아도 된다.
 
t = 1, 2, 3
a, b, c = t
  • Tuple t를 만들고, unpacking해도 된다.
 

Unpacking을 이용한 변수 값 바꾸기

변수 a, b에 들어있는 값을 서로 바꾸는 python 방식
 
a, b = 1, 2
a, b = b, a
 

Unpacking할 때 변수 갯수가 맞지 않을 때

 
  1. 첫 번째 방법
 
  • Tuple에 3개 값이 있는데, 2개 변수에만 unpacking하고 싶을 때는, underscore(_)를 사용한다
 
a, b, _ = 1, 2, 3
 
 
  1. 두 번째 방법: 1개 변수를 튜플로 만든다.
 
  • 왼쪽 변수에 *을 사용한다.
 
a, *b = 1, 2, 3
 
  • a = 1, b = (2,3)이 된다.
  • b type은 list가 된다.
 

Tuple 자체를 풀어버리는 * operator (연산자)

Tuple a와 b를 풀어서 하나로 합치는 방법
 
*a : tuple unpacking
 
리스트도 unpacking이 된다.
 
a = 1, 2
b = 3, 4
c = *a, *b
  • c는 tuple이고, c = (1, 2, 3, 4)가 된다.
 
c = [*a, *b]
  • c는 list이고, c = [1, 2, 3, 4]가 된다.
 
 
반응형