inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Chương trình đào tạo Python

얕은물_인쇄용p169중첩함수 질문

328

hyunjumink

1 câu hỏi đã được viết

0

아래는 제가 작성한 코드이고
 
# 캣은 매달 월과 같은 요일에 적립금 이벤트를 진행하기로 했습니다.
# 예를 들어, 2월 2일에는 적립금의 2배를, 3월 3일에는 적립금의 3배를 적립해줍니다.

# 만약 손님이 2월 2일에 5000원의 생선을 구매하고, 3월 3일에 15000원을 구매했다면 각각 얼마의 적립금을 받을 수 있을까요?
# 중첩 함수를 사용하여 풀어보세요!
구매금액_Feb = int(input('2월 2일에 얼마를 구매하셨나요?'))
구매금액_Mar = int(input('3월 3일에 얼마를 구매하셨나요?'))

def 배수(n):
    def 적립(value):
        적립_Feb = 구매금액_Feb * 0.1 * n
        적립_Mar = 구매금액_Mar * 0.1 * n
    return 적립


Feb = 배수(2)
Mar = 배수(3)

print(Feb)

print(f'2월 적립금 이벤트: {Feb} 노드가 적립되었습니다.')
print(f'3월 적립금 이벤트: {Mar} 노드가 적립되었습니다.')
 
여기서부터 결과입니다
2월 2일에 얼마를 구매하셨나요?5000 3월 3일에 얼마를 구매하셨나요?15000 <function 배수.<locals>.적립 at 0x7f64fed7ec20> 2월 적립금 이벤트: {<function 배수.<locals>.적립 at 0x7f64fed7ec20>} 노드가 적립되었습니다. 3월 적립금 이벤트: {<function 배수.<locals>.적립 at 0x7f64fed7e0e0>} 노드가 적립되었습니다.
 
각 달 적립금이 왜 이렇게 뜨는 건가요?
def 배수(n):
    def 적립(value):
        적립_Feb = 구매금액_Feb * 0.1 * n
        적립_Mar = 구매금액_Mar * 0.1 * n
    return 적립
 
 
여기서 뭔가 잘못된 거 같은데 뭐가 잘못된 건지 잘 모르겠어요
 

중첩함수 python

Câu trả lời 1

0

WENIV

안녕하세요. hyunjumink 님!

 

적립금이 저렇게 뜨는 이유는
1. 적립 함수를 호출했을 때에 인수를 넣어주지 않았기 때문입니다.
수정 전
return 적립
수정 후
return 적립(n)
 
2. 적립 함수를 호출 했더라도 리턴값이 없기 때문에 값이 None으로 나오게 됩니다.
수정 전
def 적립(value):
적립 = 구매금액_Feb * 0.1 * value
수정 후
def 적립(value):
적립 = 구매금액_Feb * 0.1 * value
return 적립
 
 
해당 코드를 참고하시면 됩니다.

출력값 문의

0

1

1

인코딩을 다 꼭 해봐야하는지

0

4

1

LLM 시대에서 머신러닝 개념 이해 필요성 문의

0

7

0

25-2 분기커버리지

0

13

0

25-2 이론 재탕

0

19

1

25-1 이론 재탕

0

18

1

강의 잘보고 있습니다. 강의 파일을 어디서 찾아야 되는지 몰라서 여쭤 봅니다.

0

15

1

서브넷 마스크

0

25

1

모의고사 1회 계산문제 2개 맞았는데

0

41

2

기존 미국주식 자동매매 프로그램과 같은 AWS 서버에서 돌리려고 할때

1

30

1

안녕하세요? 강사님 질문있습니다.(인코딩관련)

0

47

2

강의자료 문의

0

40

1

업캐스팅 문제 예시 4번 부모 호출

0

39

1

강의자료 링크 열리지 않음.

0

40

2

소수점 출력 질문입니다.

0

328

1

알고리즘 강의

0

249

0

얕은물 주피터 노트북

0

264

0

깊은물 셋 강의 영상 전반부가 삭제되었네요.

0

273

1

홈페이지 링크 부탁드립니다.

0

309

1

input 함수 파일 문의

0

387

1

코드 다운로드 파일 주소 확인 요청

0

323

1

생선판매 while 구문 질문

0

318

1

in 구문에서 튜플 관련 질문

1

281

1

비트연산자 2의 보수

1

1010

3