특정한 입력이 들어왔을때 결과 값을 내는 것이 함수이다. 코드를 치다보면 반복적으로 사용되는 코드들이 있다 .
예를 들면, 어떤 a와 b의 값을 더해서 리턴한다던지 그러한 뭉치들을 묶어서 Function으로 만들게 된다.
>>> def good(a,b):
return a+b
>>> good(1,2)
3
>>> def defaultValueFunction(a,b=1):
return a+b
>>> defaultValueFunction(1,2)
3
>>> defaultValueFunction(0)
1
>>> def func(type,*args):
for i in args:
print(i)
>>> func(good,1,23,4,5)
1
23
4
5
>>> def newFunc(option,defvalue=2,*args,**kwargs):
print(option)
print(defvalue)
print(args)
print(kwargs)
>>> newFunc('option','default',1,23,4,5,name=2,code=3)
option
default
(1, 23, 4, 5)
{'name': 2, 'code': 3}
파이썬에는 함수에서 default value를 사용할때 순서가 존재합니다. 이것을 지키지 않는다면 에러가 생기게 됩니다.
function(일반 변수, 디폴트 변수, 다양한 값들, 키워드 값)