-- 16.상속.ipynb --
class Animal:
def init(self, name, age):
self.name = name
self.age = age
def eat(self, food):
print(f'{self.name}은(는) {food}을(를) 먹는다.')
def sleep(self, hour):
print(f'{self.name}은(는) {hour}시간 잡니다.')
animal = Animal('앙마',1)
animal.eat('닭가슴살')
class Dog(Animal):
pass
mydog = Dog('아리',7)
mydog.eat('닭가슴살')
mydog.sleep(10)
class A :
def init(self, data, name) :
self.data = data
self.name = name
def point() :
print('여기서만 출력.')
A.point() # 질문 할 거 staticmethod이랑 지금 적은 코드랑 다른것?x
class Animal:
def init(self, name, age):
self.name = name
self.age = age
def eat(self, food):
print(f'{self.name}은(는) {food}을(를) 먹는다.')
def sleep(self, hour):
print(f'{self.name}은(는) {hour}시간 잡니다.')
class Dog(Animal) :
def init(self, name, age, breed) :
self.name = name
self.age = age
self.breed = breed
def eat(self, food) :
print(f'{self.name}은(는) {food}을(를) 아주 맛있게 먹는다.')
tomy = Dog('토미', 2, '말라뮤트')
tomy.eat('개껌')
print(tomy.breed)
class Animal:
def init(self, name, age):
self.name = name
self.age = age
def eat(self, food):
print(f'{self.name}은(는) {food}을(를) 먹는다.')
def sleep(self, hour):
print(f'{self.name}은(는) {hour}시간 잡니다.')
class Human :
def init(self, name, age, IQ) :
self.name = name
self.age = age
self.IQ = IQ
def study(self, hour) :
print(f'{self.name}은(는) {hour}시간 동안 공부합니다.')
def eat(self, food):
print(f'{self.name}은(는) {food}을(를) 야무지게 먹는다.')
class Student(Human,Animal) :
def init(self, name, age, IQ, grade) :
self.name = name
self.age = age
self.IQ = IQ
self.grade = grade
def printIQ(self) :
print('내 IQ 는',self.IQ)
Eugene = Student('이유진', 25, 133, 'A')
Eugene.eat('밥')
Eugene.IQ
Eugene.printIQ()
-- 17.스페셜_메소드.ipynb --
class Point :
def init(self, x, y) :
self.x = x
self.y = y
def str(self) :
return (f'({self.x},{self.y})')
def print_obj(self) :
print(f'({self.x},{self.y})')
def add(self, pt) :
isInt = isinstance(pt, int)
if isInt :
new_x = self.x + pt
new_y = self.y + pt
else :
new_x = self.x + pt.x
new_y = self.y + pt.y
return Point(new_x,new_y)
p1 = Point(49,51)
p1.print_obj()
print(p1)
p1 = Point(49,51)
p2 = Point(100,111)
p3 = p1 + p2 # return Point(new_x,new_y)
print(p1+p2)
print(p3)
p1 = Point(49,51)
print(p1+5)