강의로 돌아가기
한건희

return을 명령한후, 밑에 왜 코드 한줄을 더 써야되나요?

a = 1
b = 2

def add(a, b):
    result = a + b
    return result

print(result)

이렇게 쓰면 result 값이 출력되는거아닌가요?

왜,

a = 1
b = 2

def add(a, b):
    result = a + b
    return result

result = a + b
print(result) 

왜 이렇게 result = a + b 코드를 추가해야되는지 이해가 안됩니다

위에 코드를 보시면 result로 return을 시켯으니 print(result)로 출력을 시켜도 result의 값이 나와야 정상이 아닌지요..

도무지 모르겠습니다..

작성중인 코드―solution.py
1
2
3
4
5
6
7
8
9
a = 1
b = 2

def add(a, b):
    result = a + b
    return result

result = (a, b)
print(result)
1 개의 답변
Demi

return문이 실행되어, 함수가 종료되면 함수가 사용했던 값은 전부 날아가버려요.
따라서 함수 안에서 사용하는 값은 함수 밖에서는 사용할 수 없습니다.

이를 전부 이해하려면 scope에 대해 좀 더 공부를 하셔야해요. 지금 상황에서는 위와같은 간단한 답변이 최선입니다 ㅜㅜ
파이썬 강의를 완독하신 후, 좀 더 공부를 해야겠다 싶을때 python variable scope를 찾아보세요!

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.