본문 바로가기
프로그래밍/파이썬 Python

[파이썬 문법] 3-2. 함수 반환값 (return) [초보용] - 질문으로 공부하는

by it-수다쟁이증후군 2023. 4. 3.

오늘.ssam)
지난 포스트에서는 3-1함수호출(인자전달) 에 대해서 알아보았습니다. 이제 전달 했으니까 반환 받아야겟죠? 오늘은 바로 return에 대해서 이야기 해보려합니다.

Q1.나)
함수 반환값 사용에 대해서 설명해주세요.

"3-2.함수의반환값" 문장을 타이포그라피로 만든 썸네일
시작합니다.

A1.ssam)
함수 반환값이란? 함수가 1)실행된 결과를 2)다시 호출한 코드로 전달하는 기능입니다. 함수에서 반환값을 사용하면 1)반환값을 변수에 할당하거나 2)다른 함수에서 인자로 사용할 수 있습니다.

1)함수에서 반환값을 사용하는 코드

def sum_numbers(a, b):
    return a + b

result = sum_numbers(1, 2)
print(result)   

#출력 결과 : 3

위 코드에서 sum_numbers 함수는 ab 두 인자를 받아 덧셈 연산을 수행하고, 결과를 반환합니다. 함수를 호출할 때 12라는 두 인자를 전달하고, 반환된 결과 3result 변수에 할당되어 출력됩니다.

만약, 함수에서 반환문을 사용하지 않으면 반환값이 없는 함수가 됩니다. 이 경우 함수는 실행된 결과를 호출한 코드로 전달하지 않습니다.

2)반환값이 없는 함수의 코드

def print_hello():
    print("Hello, world!")

print_hello()   
result = print_hello()
print(result)

#출력 결과 : Hello, world!   
#출력 결과 : Hello, world!
#출력 결과 : None

위 코드에서 print_hello 함수는 Hello, world!라는 문자열을 출력하는 기능을 가지고 있습니다. 하지만 반환문이 없으므로 함수는 반환값을 전달하지 않습니다. 따라서 함수를 호출한 코드에서 result 변수에는 None이 할당됩니다.

여기서 재밌는 출력 결과가 나옵니다. "hello, world" 가 2번 출력 되었다는 것입니다. 반환값이 None 일지언정 함수는 호출이 되었고 함수의 코드블럭은 실행되었습니다. 그렇기 때문에 위와 같은 결과가 나옵니다.

Q2.나)
함수 반환값에 대해서 간단하게 정리해주세요

A2.ssam)
3줄로 요약할께요.

  • 함수에서 반환(return)문을 사용하여 값을 반환할 수 있다.
  • 반환값이 없는 함수는 None을 반환한다.
  • 반환문은 함수 내에서 실행되면, 해당 함수를 호출한 부분으로 값을 반환한다.

Q3.나)
함수 반환값에 대한 다른 예시 코드를 알려주세요

A3.ssam)
sure!

1)반환문을 사용하여 값을 반환하는 예시 코드:

def add_numbers(x, y):
    result = x + y
    return result

sum = add_numbers(3, 4)
print(sum) 

# 출력 결과: 7

위의 코드에서 add_numbers 함수에서는 x와 y를 더한 결과를 반환하도록 설정되어 있습니다. 이 함수를 호출하여 반환된 값을 sum 변수에 저장하고 출력하면 7이 출력됩니다.

2)반환값이 없는 함수는 None을 반환하는 예시 코드:

def say_hello(name):
    print(f"Hello, {name}!")

result = say_hello("John")
print(result) 

# 출력 결과: Hello, John!
# 출력 결과: None

위의 코드에서 say_hello 함수는 인자로 받은 name을 출력하고 반환값이 없습니다. 이 함수를 호출하여 반환된 값을 result 변수에 저장하고 출력하면 None이 출력됩니다.

3)반환문은 함수 내에서 실행되면, 해당 함수를 호출한 부분으로 값을 반환하는 예시 코드:

def is_even(x):
    if x % 2 == 0:
        return True
    else:
        return False

print(is_even(4)) 
# 출력 결과: True

print(is_even(3)) 
# 출력 결과: False

위의 코드에서 is_even 함수는 인자로 받은 x가 짝수인지 홀수인지 판별하여 True나 False를 반환합니다. 이 함수를 호출한 부분에서는 반환된 값을 출력하게 됩니다. 호출한 부분에서 반환값에 대한 처리를 해줘야 합니다.

Last.ssam)
3.함수의 기초에서 시작해 3-1함수의호출(인자전달) 에 이어 오늘 3-2.함수 반환값을 어떻게 사용하는지 개념정리가 끝났습니다. 이로써 함수의 기초는 끝마쳤습니다. 다음장 부터는 리스트,튜플,딕셔너리,집합를 공부할 예정입니다. 개념만 잘 잡으면 내용자체는 어렵지 않습니다. 화이팅입니다~~^^ 아래는 오늘 질문리스트입니다.

  1. Q)함수 반환값 사용에 대해서 설명해주세요.
  2. Q)함수 반환값에 대해서 간단하게 정리해주세요
  3. Q)함수 반환값에 대한 다른 예시 코드를 알려주세요

댓글