Tools & Tips/python

args* 와 parameter의 차이 와 패킹/언패킹

IP_DataScientist 2022. 12. 23.
반응형

패킹과 언패킹 : *을 사용해서 패킹된 것은 언패킹 그리고 vice versa (언패킹된것은 패킹)

매개변수와 전달인자의 차이 : 변수 자체는 매개변수이지만, 함수에 입력으도 사용되는 시점에는 전달인자이다.

# https://youtu.be/k27DwgJ2KkA?t=14131
def my_func(*args): # args 는 튜플로 패킹되어 있다.
    # 입력된 a : 1,2,3,4,5는 언패킹된 존재이니 *로 패킹함
    print(f'a 에는 {args}가 들어가있다. 타입은 {type(args)}라고 한다')
    for i in args:
        print(i)

my_func(1,2,3,4,5)
# args : arguments (서로간의 약속)

# http://taewan.kim/tip/argument_parameter/
## parameter 매개변수 : 함수와 메서드 입력 변수(Variable) 명
## argument 전달인자 : 함수와 메서드의 입력 값(Value)

def concat(str1, str2):
    # str1, str2 는 매개변수이다
  return str1 +", "+ str2

sent1 = '이것은 parameter 입니다'
sent2 = '하지만 변수가 함수의 입력값으로 들어갈땐 전달인자(args)라고 합니다'
concat(sent1, sent2)
반응형

댓글

💲 Google Ads.