본문 바로가기

Programming/Python

[Python] 네임드튜플 (namedtuple)

보통의 튜플의 경우에는 인덱스를 통해서 튜플에 접근이 가능한데, namedtuple을 사용하게 되면 키 값으로 접근이 가능하다.

 

네임드튜플 예시

from collections import namedtuple  # collections 모듈의 namedtuple 호출 위해서
Tri = namedtuple('Triangle', ['bottom', 'height'])  # 네임드 튜플 클래스 만듦
t = Tri(3, 7)  # 네임드 튜플 객체 생성

print(t[0], t[1])  # 일반 튜플과 동일한 방법으로 접근 가능하다.
3 7

print(t.bottom, t.height)  # 일반 튜플과 달리 이름으로도 접근이 가능하다.
3 7

 

네임드튜플 언패킹 예시

t = Tri(12, 79)  # 네임드 튜플 객체 생성
a, b = t

print(a, b)
12 79

def show(n1, n2):
    print(n1, n2)
    
t = Tri(3, 8)
show(*t)  # 값의 전달 과정에서 언패킹
3 8