프로그래밍 핵심 개념 in Python추상화변수의 scope

Q

scope 질문.

조회 703

좋아요 1

2021년 8월 15일

A
2개의 답변이 있어요
커뮤니티 파트너 채택
2021년 8월 17일

댓글 1

2021년 8월 19일
우와!이렇게 자세한 답변 감사합니다!! 덕분에 이해도 잘 됐고 많이 배웠어요. 감사합니다!
2021년 8월 16일

댓글 2

2021년 8월 17일
알려주셔서 감사합니다!

질문을 더 하고 싶어서 이렇게 댓글 달았습니다.

질문1.

"return 하기 때문에 계속해서 값이 증가하는게 아니라 parameter 값에 어떤 값이 들어가는지 확인해보시기를 바랍니다."

우선..이 말이 무슨 뜻인지 잘 모르겠습니다 ㅠㅠ

return을 하기 때문에 파라미터의 값이 글로벌 변수 값이랑 다르다는 내용 같은데..값이 정확히 어떻게 된다는 건지 잘 모르겠습니다.

질문2.

여기서 return의 기능에 혼란이 왔습니다.

제가 이전에 겨우겨우 이해한 내용으로는 return은 값을 가지고 있다가 print를 통해 그 값을 보여준다는 거랑, return을 하면 함수가 끝난다는 거였는데,

여기서는 return을 했기 때문에 x라는 변수에 값이 저장되지 않았다는 말처럼 들려서 혼란스럽습니다.

질문3.

"원하시는 결과인, 3,4,5가 순서대로 계속 증가해서 나오는 결과를 원하신다면 my(x)만 적고 그아래 rint(x)를 적지 마시고 모든 my(x)를 x = my(x)와 같이 작성"

이렇게 알려주셨는데요, 제가 작성한 코드에서도 함수 밖에서 x = my(x)라고 작성한 뒤에 print(x)를y 해준건데 왜 원하는 결과가 안 나왔을까요?

my(x)만 적고 그 아래 print(x)를 한 건 이미 위에 x = my(x)를 그대로 둔 후 밑에다 적은 건데,

x=my(x)를 하고 print(x) print(x) print(x)를 했을 때 3 3 3 이 나와서 해본거였어요. 근데도 안 되네요..ㅠㅠ

2021년 8월 17일
말이 길어질거 같아서 아래 다시 새로운 답변으로 작성할게요!

(주) 코드잇

대표강영훈

개인정보보호책임자강영훈

이메일support@codeit.kr

사업자 번호313-86-00797

통신판매업제 2019-서울중구-1034 호

주소서울특별시 중구 청계천로 100 시그니쳐타워 동관 10층 코드잇