


def love_you(my_name, your_name):
print(f"{my_name} loves {your_name}")
love_you(your_name = "아이유", "정우성")
> Traceback (most recent call last):
File "python", line 1
SyntaxError: positional argument follows keyword argument

def love_you(my_name = "정우성", your_name):
print(f"{my_name} loves {your_name}")
> Traceback (most recent call last):
File "python", line 1
SyntaxError: non-default argument follows default argument
함수를 정의 할때 default value parameter를 non-default value parameter 앞에 정의 하면 안된다고 배웠습니다.
왜 안돼야만 하는지 생각해보시고 블로깅 하여 채널에 공유해 주세요.
2. 위치 인수(positional arguments)와 가변 인수(variable length arguments)의 위치를 참고 자료를 통해 조사해서 어떤에러 인지 확인하고 함수가 호출되도록 에러를 고치고 호출후에 출력되는 결과를 블로그에 정리해 주세요.
def func_param_with_var_args(name, *args, age):
print("name=",end=""), print(name)
print("args=",end=""), print(args)
print("age=",end=""), print(age)
func_param_with_var_args("정우성", "01012341234", "seoul", 20)
def func_param_with_kwargs(name, age, **kwargs, address=0):
print("name=",end=""), print(name)
print("age=",end=""), print(age)
print("kwargs=",end=""), print(kwargs)
print("address=",end=""), print(address)
func_param_with_kwargs("정우성", "20", mobile="01012341234", address="seoul")
def mixed_params(name="아이유", *args, age, **kwargs, address):
print("name=",end=""), print(name)
print("args=",end=""), print(args)
print("age=",end=""), print(age)
print("kwargs=",end=""), print(kwargs)
print("address=",end=""), print(address)
mixed_params(20, "정우성", "01012341234", "male" ,mobile="01012341234", address="seoul")
Function
Define - possiblly have 0 or more parameters
Call - possibly take 0 or more resutls
def name_of_the_func(parameter):
인수
매개변수 - Parameter - 괄호 안에 optional 하게 들어가는 변수
인수 - argument - 함수로 전달하는 값 - 함수 내에서는 매개변수로 복사 됨
Positional Arguments)>>> def menu(wine, entree, dessert):
return {'wine': wine, 'entree': entree, 'dessert': dessert}
menu
Keyword Arguments) - 매개변수에 상응하는 이름을 인수에 함수 정의와 다른 순서 로 지정 가능 >>> menu(entree='beef', dessert = 'bagel', wine= 'bordeaux')
{'wine': 'bordeaux', 'entree' : 'beef', 'dessert': 'bagel'}
*args - 매개변수에서 위치 인수 변수를 튜플로 묶음
함수에서 위치 인수 지정시, 마지막에 *args를 써서 - 나머지 인수를 모두 취하게 함
**kargs - 키워드 인수를 딕셔너리에 묶기 위해서 키워드 인수
Keyword-only arguments): 값을 위치적 제공 X, '이름=값' 으로 제공