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

return문과 print문, 두 가지는 왜 별개로 사용하나요? 오히려 print 로 쓰는게 더 편하지않나요??

쓰는사례가 무엇인지 궁금합니다!

print는 데이터를 사람이 볼수있게 모니터에 표시해주는 역할을 합니다. 반면 return은 해당 함수가 어떤 값을 가질 것인지 지정해주는 것일뿐 모니터에 표시되진 않습니다.

예시로

def example():
    print("hello")

라는 함수가 있을때 example()을 실행하면 화면에 "hello"가 출력될 것입니다. 하지만 example()이라는 함수는 어떠한 값도 갖고 있지 않죠.

때문에

print(example())

이 코드를 실행하면 None이 출력됩니다.

반면에

def example():
    return "hello"

라는 함수를 정의하고 실행하면 화면에는 아무런 값도 표시되지 않습니다. 하지만 내부적으로 example()함수는 "hello"라는 값을 가지게 되는 것이죠.

print(example())

이라는 코드를 실행하면 "hello"가 출력되게 됩니다.

현재 예제에서는 결과값을 바로 확인할 목적이기 때문에 print가 더 편해보이는 것 같습니다.

그런데 연산이 여러 과정인 코드를 사용해야 할 때 중간값은 굳이 확인할 필요가 없는 경우가 생길 것입니다. 그리고 그 중간값을 연산에 계속 사용해야 하니까 어딘가에 그 값이 저장되어야 하구요.

예를 들어서 계산기 어플을 보면 '지난 계산 보기'라는 버튼이 있는데요 지난 계산 목록 중에서 하나를 누르면 그 계산의 결과값이 계산 연산창에 입력이 됩니다 그 부분에서 return 명령어를 썼다고 할 수 있겠네요ㅎㅎ

def calculate_change(payment, cost):
    # 코드를 작성하세요.
    now = payment - cost;
    now = money_return(now, 50000);
    now = money_return(now, 10000);
    now = money_return(now, 5000);
    now = money_return(now, 1000);

def money_return(pay, unit):
    cnt = int(pay/unit);
    print('%d원 지폐: %d장' %(unit,cnt));
    now = pay - (unit * cnt);
    return now;
# 테스트
calculate_change(100000, 33000);

이와 같은 상황처럼 작업의 결과가 다른 작업에 필요한 경우가 있기 때문에 우리는 return을 사용합니다.

관련 질문
2018 프로그래밍 시작하기>추상화 심화>return과 print의 차이
2018년 3월 15일 작성
가루노을가루노을
답변 4486 조회
2018 프로그래밍 시작하기>추상화 심화>return과 print의 차이
2018년 5월 28일 작성
Brsh kimBrsh k..Brsh kim
답변 179 조회
2018 프로그래밍 시작하기>추상화 심화>return과 print의 차이
2017년 10월 16일 작성
최성원최성원
답변 1176 조회