파이썬에서 함수를 만들 때, 리턴값으로 `namedtuple`을 써보자.
파이썬에서 리턴값이 조금 복잡해지면, 딕셔너리를 많이 사용했었습니다. 그런데 이렇게 만든 함수를 쓰려면(함수 이름을 ‘fun’이라고 합시다!), fun[’name’] 과 같이 딕셔너리를 불러오는 방식으로 써야합니다. 뭐 키보드를 많이 두드려야 합니다. 그래서 이를 쉽게 하는 방법을 찾다가 Not using named tuples when returning more than one value from a function이라는 글을 봤습니다. namedtuple을 이용해서 하면 fun.name
과 같이 쉽게 처리할 수 있습니다. 윗글에서 코드를 가져왔습니다. 아주 쉽게 처리할 수 있습니다! name = namedtuple("name", ["first", "middle", "last"])
, 코드에서 namedtuple
을 만들어서 return name("Richard", "Xavier", "Jones")
같이 사용하는 것입니다. 그러면 만들 때 사용했던, ["first", "middle", "last"]
을 가지고 처리할 수 있게 됩니다.
from collections import namedtuple
def get_name():
name = namedtuple("name", ["first", "middle", "last"])
return name("Richard", "Xavier", "Jones")
name = get_name()
# much easier to read
print(name.first, name.middle, name.last)