개발자
python을 처음 접해 본 사람입니다. class Stocks: def __init__ (self, name, price, count = 0): self.name = name self.price = price self.count = count def __repr__(self): return f"Stocks 클릭 수(count={self.count})" def click(self, num_times=1): self.num_times = num_times self.count = self.count + num_times def read(self): return self.count def reset(self): self.count = 0 lg = Stocks("LG전자", 150000) method 함수 안에 return을 어떠한 경우에 쓰이는지 모르겠습니다. init, click, reset은 return을 안 썼는데 repr, read는 사용했습니다. 사용 미사용의 이유를 예시를 통해 구체적으로 설명해주시면 감사드리겠습니다.
답변 2
인기 답변
프로그래밍에서 return은 '값을 반환한다'라는 의미에요 (물론 Python 포함) 예시로 한 코드를 보여드릴게요. 여기 ab() 라는 함수가 있어요. def ab(a,b): total = a + b 코드를 살펴보면 ab()함수는 첫번째 인자와 두번째 인자를 더해주는 코드에요 하지만 1와 2의 합을 알기 위해 ab(1,2)를 사용해 pri = ab(1,2) print(pri) 라는 코드를 적었어요. 코드를 살펴보면 ab(1,2)를 pri에 대입하고 print() 시키는 코드에요. 하지만 해당 코드를 실행해보면 ab()함수에서 값을 반환을 안해줘서 pri의 출력값은 Undefined, Null, NaN 또는 에러가 날거에요. 우리는 ab()에서 두 수를 더한것을 출력해주는 코드이기 때문에 a + b의 값을 반환해줄 필요가 있어요. 이때 'return'을 사용하는것 이에요. 한번 코드를 짜보자구요. def ab(a,b): total = a + b return total pri = ab(1,2) print(pri) 라는 코드가 있어요. 코드를 해석하면 함수로 1과2라는 수를 준다슴 total로 그 두수를 합친다음 total에다가 저장해요. 그다음 그 값을 반환시켜주고 있어요. 그럼 pri에는 이제 3(1+2)이라는 값이 저장이 되고 3이라는 값이 출력되요.
익명
작성자
2023년 08월 14일
값진 시간 들여 정성스럽게 답변해주셔서 감사합니다! 충분한 이해가 되었습니다^^ 오늘도 좋은 하루 되시길 바랍니다~
아림
FlatBit 팀장 • 2023년 08월 14일
도움이 되셨다니 다행이에요. 더 도움되는 답변을 남기도록 노력하겠습니다!
python을 주로 다루지는 않지만, 함수 안에 return을 쓰는 경우와 안쓰는 경우는 python에 한정되는 문제는 아니기에 답변을 드려봅니다. 함수는 "동작의 모음"이라고 생각하시면 좋을 것 같은데요. 함수가 종료된 후(함수 안에 있는 동작들이 모두 실행된 후) 그 함수 안에서 진행된 작업의 결과로 알고 싶은 게 있을 때, return을 사용하여 함수 밖으로 가져올 수 있습니다. 이를 통해 함수를 호출한 곳에서 그 결과를 사용하거나 저장할 수 있죠. 예시 코드에서 return을 사용하는 'read' 함수와 사용하지 않는 'reset' 함수를 가지고 설명해드리도록 할게요. read 함수는 "this"에 있는 count 값을 "읽어오는" 목적을 가지고 있기 때문에 return을 통해 this.count를 반환하게 되고요. reset 함수는 "this"에 있는 count 값을 0으로 초기화하는 목적을 가지고 있기 때문에 return이 사용되지 않고 있습니다. 만약 reset 함수의 목적을 ["this"에 있는 count 값을 0으로 초기화하고, 초기화된 count 값을 읽어오는 것] 으로 정했다면. 아래와 같이 작성하여 return을 활용할 수도 있습니다. def reset(self): this.count = 0 return this.count 혹시 이해가 안되는 부분이 더 있으시면, 추가로 질문 남겨주세요!
익명
작성자
2023년 07월 25일
감사합니다! 제 눈높이에 맞춰 설명해주셔서 바로 이해하였습니다 오늘도 좋은 하루 되시길 바랍니다^^
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!