def add(a, b):
return a+b
>>> def add(a, b) //a, b는 매개변수
... return a+b
>>> print(add(3,4)) //3, 4는 인수
>>> def add(a, b):
... return a+ b
...
>>> return = add(a=3, b=7)
>>> print(result)
10
>>> return = add(b=5, a=3)
>>> print(result)
8
매개변수 이름 앞에 *을 붙이면 입력값을 전부 모아서 튜플로 만들어준다.
>>> def add_many(*args):
... result = 0
... for i in args:
... result = result + i
... return result
...
>>>
결과값이 여러개인 경우 하나의 튜플로 리턴된다.
>>> def add_and_mul(a,b):
... return a+b, a*b
>>> result = add_and_mul(3,4) // result = (7, 12)
만약 하나의 튜플로 리턴받은 값을 각각 2개의 결과값처럼 받고 싶다면 아래와 같이 함수를 호출하면 된다.
>>> result1, result2 = add_and_mul(3,4) //result1 = 7, result2 = 12
# vartest_return.py
a = 1
def vartest(a):
a = a + 1
return a
a = vartest(a)
print(a)
# vartest_global.py
a = 1
def vartest():
global a
a = a+ 1
vartest()
print(a)
함수를 한줄로 간격하게 만들 때 사용한다.
def를 사용해랴 할 정도로 복잡하지 않거나 def를 사용할 수 없는 곳에 쓰인다.
>>> add = lambda a,b : a+b
>>> result = add(3,4)
>>> print(result)
7