뮤트 개발일지

[파이썬 코딩 도장] Unit 29. 함수 사용하기 본문

코딩도장

[파이썬 코딩 도장] Unit 29. 함수 사용하기

박뮤트 2022. 1. 5. 23:59

Hello, world! 출력 함수 만들기

>>> def hello():
...      print('Hello, world!')
... 
hello()
Hello, world!

덧셈 함수 만들기

>>> def add(a, b):
...     print(a + b)
...
>>> add(10, 20)
30

함수를 호출할 때 넣는 값을 인수argument라고 부름. 위의 코드에서 10, 20이 인수


함수의 결과 반환하기

>>> def add(a, b):
...     return a + b
...
>>> x = add(10, 20)
>>> x
30

반환값은 저장하지 않고 바로 다른 함수에 넣을 수도 있다.

>>> print(add(10, 20))
30

매개변수는 없고 반환값만 있는 함수

>>> def one():
...     return 1
...
>>> x = one()
>>> x
1

return으로 함수 중간에서 빠져나오기

>>> def not_ten(a):
...     if a == 10:
...         return
...     print(a, '입니다.', sep='')
...
>>> not_ten(5)
5입니다.
>>> not_ten(10)
>>>

함수에서 값을 여러 개 반환하기

>>> def add_sub(a, b):
...     return a + b, a - b
...
>>> x, y = add_sub(10, 20)
>>> x
30
>>> y
-10

>>> x = add_sub(10, 20)
>>> x
(30, -10)

변수 한 개에 저장하면 튜플로 값이 반환된다.


함수의 호출 과정 알아보기

def mul(a, b):
    c = a * b
    return c
 
def add(a, b):
    c = a + b
    print(c)
    d = mul(a, b)
    print(d)
 
x = 10
y = 20
add(x, y)
30
200

함수는 스택stack 방식으로 호출된다. 함수를 호출하면 스택의 아래쪽 방향으로 함수가 축적되고 함수가 끝나면 위쪽 방향으로 사라진다. 

전역 프레임은 스크립트 파일의 실행이 끝나면 사라진다.