카테고리 없음

내일 배움 캠프 8주차 2day

하늘유니콘 2023. 5. 2. 19:26
  • Animal 클래스를 만들어서
  • 이름과 나이를 속성으로
  • speak를 메소드로 갖게 해주세요
  • Dog 클래스와 Cat 클래스를 각각 Animal 상속을 받아 만들어주세요
  • speak 메소드를 각각의 클래스에 맞게 구현해주세요
class Animal:
    def __init__(self,name,age,speak):
        self.name = name
        self.age = age
        self.speak =speak
        
    def information(self):
        print("이름:" +self.name)
        print("나이:" +str(self.age))
        self.speak()
        
class Dog:
    name = '개'
    def speak(self):
        print('멍멍')
        
class Cat:
    name = '고양이'
    def meow(self):
        print('야옹')
        
k1 = Animal('알파',5, Dog)
k2 = Animal('마고',3, Cat)

k1.information()
k2.information()

 

슈도코드 작성

 

class Animal을 생성

 

def 함수를 이용해서 각 필요한 인자를 self로 저장

self로 각 인자를 지정해준다.

 

def  함수를 이용해서 정보를 이름,나이 입력해준다.

단 나이는 str()함수를 사용하여 age 값을 문자열로 변환해준다.

 

class Dog:

   각 인자들에 정보를 입력해준다.

        함수를 이용하여 스피커를 스피커라는 값을 자신을 지정해준다.

         프린터에 들어갈 소리 효과를 넣어준다,

         

class Cat:

   각 인자들에 정보를 입력해준다.

        함수를 이용하여 스피커를 스피커라는 값을 자신을 지정해준다.

        프린터에 들어갈 소리 효과를 넣어준다,

k1 = Animal('알파',5, Dog)
k2 = Animal('마고',3, Cat)

'알파'는 'k1'인스턴스 이름

'5'는 'k1' 인스턴스의 나이

'Dog'는 'k1' 인스턴스 동물의 종류

 

'마고'는 'k2'인스턴스 이름

'3'은 'k2' 인스턴스의 나이

'Cat'는 'k1' 인스턴스 동물의 종류

 

k1.information()
k2.information()

'k1.information()' 은 'k1' 인스턴스의 정보를 출력
'k2.information()' 은 'k2' 인스턴스의 정보를 출력

이름: 알파, 나이: 5살, 종류: Dog'

이름: 마고, 나이: 3살, 종류: Cat'