packing & unpacking

이현진·2023년 3월 24일
0

알고리즘

목록 보기
7/9
post-thumbnail

지난 번, unpacking에 대해 정리한 적이 있다. 이번엔 그 반대 개념인 packing과 비교해보려한다.

https://velog.io/@hjnee1102/unpacking

Packing

packing은 함수가 인자로 받은 여러 개의 값을 하나의 객체로 합쳐서 받을 수 있도록 한다.*을 매개변수 앞에 붙여 사용할 수 있다.

packing을 이용해 받은 인자는 하나의 튜플로 관리된다.

def func(*args):
	print(args)
    print(type(args))
    print(sum(args))
    
func(1, 2, 3)
>>> (1, 2, 3)
>>> <class 'tuple'>
>>> 6

정리

정리하자면, 개념상 차이점은 packing은 여러 개의 값을 하나로 합치는 것, unpacking은 하나의 객체를 풀어 그 안의 여러 값을 사용하는 것이다. 사용법의 차이점은 함수 선언부 매개변수에 *가 사용된다면 packing, 함수의 호출 시 인자에 *가 사용되는 것은 unpacking이라는 것이다.

profile
세상의 모든 지식을 담을 때까지

0개의 댓글