[프로그래밍 기초]에 관심이 있으신가요?
무제한으로 수강해 보세요!
코드잇 시작하기
2018 프로그래밍 시작하기>추상화 심화>return과 print의 차이
2018년 3월 15일 작성
가루노을가루노을NEWBIE

아래 후술할 설명중에서

그리고 리턴값을 반환해야 되는데 리턴값이 없으므로(return 명령어가 코드내에 없으므로) 이 함수의 리턴값은 None입니다.

이 부분을 잘 모르겠습니다.

print(print_sum(2, 4))

여기서 print_sum(2, 4)6이 되는 것 까진 알겠는데

<b>왜 굳이 return 값을 함수 안에서 호출해야하는지 모르겠습니다.</b>

<b>그리고 None을 리턴하지 않았는데도 리턴되는 이유를 모르겠습니다.</b>

def print_sum(a, b):
    print(a + b)

노파심에 조금만 더 적어드리면

def print_sum(a, b):
    print(a + b)

print(print_sum(2, 4))

이것도 그대로 다시 써볼께요

함수 print_sum(a, b): 를 만약 실행하면
    a + b를 출력하라

출력하라(print_sum(2, 4))
=>함수를 실행해서 일단 6을 출력
=>이제 print_sum(2, 4)는 뭐로 변했죠?
=>출력하라(어쩌라는?)
=>이런 경우는 파이썬 제작자가 숨겨진 리턴을 만들어 놓았는데
=>print_sum(2, 4)라는 함수가 쓰여있는 부분을 지우고, 그 자리에 None를 쓰세요
=>라고 숨겨진 리턴이 약속되어 있습니다!
=>출력하라(None)
=>None이 나옵니다

도움이 되었기를 바랍니다!ㅋㅋ

함수는 항상 return 값을 반환해야 합니다. 만약 return 값이 함수 내에 정의되어 있지 않다면 함수 정의 가장 마지막줄에 reutrn None이 생략되어 있다고 가정하고 파이썬 내부적으로 처리하게 됩니다

물론 return 값이 필요할 때도 있고 없을 때도 있습니다. 왜 라는 질문에 어떻게 적절히 답변해야 할지 모르겠네요 ㅠㅠ. 조금 더 이해 안되는 부분을 상세히 기술해주시면 좋을 것 같습니당

물론 return 값이 필요할 때도 있고 없을 때도 있습니다. 왜 라는 질문에 어떻게 적절히 답변해야 할지 모르겠네요 ㅠㅠ. 조금 더 이해 안되는 부분을 상세히 기술해주시면 좋을 것 같습니당

지나가다 보고 잠시 답변을 남겨봅니다. return이 뭔지 이해를 못하신거에요. 근데 정말 간단한거에요!

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

print(sum(2, 4))

이걸 그대로 다시 써볼께요

함수 sum(a, b): 를 만약 실행하면
    함수가 쓰여있는 부분을 지우고, 그 자리에 a + b를 쓰세요

출력하라(sum(2, 4))
=>sum(2, 4)라는 함수가 쓰여있는 부분을 지우고, 그 자리에 2 + 4를 쓰세요
=>출력하라(2 + 4)
=>6이 나옵니다

아시겟죠 이제? return이 뭔지 이해하시면 간단합니다!ㅋㅋ

관련 질문
2018 프로그래밍 시작하기>추상화 심화>return과 print의 차이
2017년 11월 13일 작성
이지헌이지헌
답변 3157 조회
2018 프로그래밍 시작하기>추상화 심화>return과 print의 차이
2018년 5월 28일 작성
Brsh kimBrsh k..Brsh kim
답변 179 조회
2018 프로그래밍 시작하기>추상화 심화>return과 print의 차이
2017년 10월 16일 작성
최성원최성원
답변 1176 조회