함수에 인수를 순서대로 넣는 방식을 위치 인수라고 합니다. 위치 인수를 사용하는 함수는 리스트(튜플) 앞에 *(애스터리스크)를 붙여서 리스트 언패킹으로 넣을 수 있습니다.
def 함수이름(매개변수1, 매개변수2): # 위치 인수를 사용하는 함수
코드
함수(*리스트) # 리스트 언패킹
함수(*튜플) # 튜플 언패킹
위치 인수를 사용하는 가변 인수 함수는 매개변수 앞에 *를 붙여서 만듭니다.
def 함수이름(*매개변수): # 위치 인수를 사용하는 가변 인수 함수
코드
함수(인수1, 인수2) # 인수 여러 개를 직접 넣기
함수(*리스트) # 리스트 언패킹
함수(*튜플) # 튜플 언패킹
함수에 넣는 인수에 이름(키워드)를 붙이는 방식을 키워드 인수라고 합니다. 키워드 인수는 딕셔너리 앞에 **(애스터리스크 두 개)를 붙여서 딕셔너리 언패킹으로 넣을 수 있습니다.
# 2 keyword arguments
greet(name = "Bruce",msg = "How do you do?")
# 2 keyword arguments (out of order)
greet(msg = "How do you do?",name = "Bruce")
키워드 인수를 사용하는 가변 인수 함수는 매개변수 앞에 **를 붙여서 만듭니다.
def 함수이름(**매개변수): # 키워드 인수를 사용하는 가변 인수 함수
코드
함수(키워드1=값1, 키워드2=값2) # 키워드 인수를 직접 넣기
함수(**딕셔너리) # 딕셔너리 언패킹
1 positional, 1 keyword argument
greet("Bruce", msg = "How do you do?")