inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

Class(1-2)

클래스에 관해서 질문드립니다.

245

드가자

작성한 질문수 12

0

안녕하세요. 클래스에 관한 기초수업을 듣고 복습을 위해 아래 와 같은 코드를 작성햇는데 에러가 나는 부분이 있습니다. 한번 코드 리뷰 좀 부탁드립니다.class japan:

    species = '왜놈'

    def __init__(selfnamepopulationeconomy):
        self.name = name
        self.population = population
        self.economy = economy

    def foods(selfnameprice):
        self.name = name
        self.price = price


a = japan('tokyo''100만''우수')
print(a.__dict__)

b = a.foods('돈까스'1000)

여기서 문제가 일본에는 어떤 도시가 있고 그리고 음식은 어떤 것이 있는지 쓰고싶은데 foods라는 함수는 어떻게 실행시키는지 잘 모르겟습니다...

파이썬기초강의 python

답변 1

0

웹도날드

a = japan('tokyo', '100', '우수')

print(a.__dict__)

a.foods('돈까스', 1000)
b = a


print(b.__dict__)

##결과

{'name': 'tokyo', 'population': '100만', 'economy': '우수'} {'name': '돈까스', 'population': '100만', 'economy': '우수', 'price': 1000}

foods라는 함수는 잘 실행시키셨고요 그 함수를 실행시키면 a의 값이 변합니다. 하지만 foods 함수는 리턴값이 없기 때문이 그 결과를 b에다 넣으려고 해도 넣을 것이 없습니다. 굳이 b를 바꾸시겠다면 a의 food 함수를 써서 값을 바꾸고 a를 b에 대입하셔야 할 것입니다.

하지만 코드의 문제는 name이 'tokyo'에서 '돈까스'로 바뀐 부분도 있습니다. 음식 이름을 추가하고싶으시다면 foods 함수의 self.name = name을 self.foodname = name 등으로 바꾸는 것이 필요해 보입니다.

54강 4분 41초에서 질문 있어요.

0

7

1

import

0

9

1

45강 예제4번에서 질문 있어요!

0

9

0

45강 강의 10분 03초 내용에서 x + 1 을 하는 이유는 뭔가요?

0

9

1

3강, 7강 화면이 안나옵니다. 그냥 검은화면으로만 노출되요;;

0

10

0

41강 1분 39초 영상에서 import test_module이 조회 안 돼요.

0

24

1

29강 while(3-1) 5분 20초 강의 영상 질문

0

35

0

pcskjs@naver.com

0

43

1

인터프리터 설정이 안됩니다.

0

49

1

Python formatter 설치

0

33

1

자료 다운로드 위치 확인 부탁드립니다.

0

36

2

보라색 예약어

0

28

1

#을 붙이는 이유

0

30

1

실행이 안 되는데요.

0

28

1

print 문법 실행 안 돼요.

0

31

1

영문 계정

0

28

1

맥북에서 아이패드로 연결해서 보려고 하면 화면이 안뜹니다.

0

25

1

인스턴스 변수 문의

0

66

1

챕터 03_04 (튜플) 교육자료

0

74

2

Package(3-1) Sub 폴더 자료

0

59

1

아톰 출력 안됨

0

100

2

강의자료 메일 발송 요청 드립니다.

0

108

1

강의자료 메일로 보내주실 수 있으실까요?

1

66

0

Iterable 요소는 리스트로 작성해야하는 것 맞나요?

1

93

2