파이썬 함수의 parameter에 대해 알아보자
수학적 함수의 의미와 같이, 파이썬의 함수도 외부의 변수를 받아 그것과 관계되는 값을 리턴한다.
이때의 외부의 변수가 parameter이다.
def introduce(name, position):
print(f"My name is {name}, I'm {position} developer")
introduce("dongmyeong", "back-end")
# My name is dongmyeong, I'm back-end developer
순서대로 parameter를 전달하는 대신, parameter 이름에 맞추어서 값을 전달하는 방식
가독성을 향상시키며, 순서가 바뀌어 결과값이 바뀌는 오류를 방지할 수 있다.
def introduce(name, position):
print(f"My name is {name}, I'm {position} developer")
introduce(position="back-end", name="dongmyeong")
# My name is dongmyeong, I'm back-end developer
def introduce(name, position):
print(f"My name is {name}, I'm {position} developer")
introduce(position="back-end", "dongmyeong")
> Traceback (most recent call last):
File "python", line 1
SyntaxError: positional argument follows keyword argument
def introduce(name="dongmyeong", position="back-end"):
print(f"My name is {name}, I'm {position} developer")
introduce()
# My name is dongmyeong, I'm back-end developer
이는 non-default value가 뒤에있는 경우, 전달된 값이 default value인지 none-default value인지 결정 불가능하기 때문이다.
def introduce(name="dongmyeong", position):
print(f"My name is {name}, I'm {position} developer")
> Traceback (most recent call last):
File "python", line 1
SyntaxError: non-default argument follows default argument