# page 400 1번
class Cat:
def __init__(self,name,age):
self.__name=name
self.__age=age
def __str__(self,):
self.str_info=self.__name+" "+str(self.__age)
return self.str_info
def getAge(self,):
return self.__age
def getName(self,):
return self.__name
def setName(self,name):
self.__name=name
def setAge(self,age):
self.__age=age
missy=Cat('Missy',3)
lucky=Cat('Lucky',5)
print(missy)
print(lucky)
# page 400 2번
class Rocket:
def __init__(self,x=0,y=0):
self.x=x
self.y=y
def __str__(self,):
self.str_info=str(self.x)+' '+str(self.y)
return self.str_info
def moveUp(self,):
self.y+=1
myRocket=Rocket()
print('로켓의 높이:',myRocket.y)
myRocket.moveUp()
print('로켓의 높이:',myRocket.y)
# page 401 3번
class Box:
def __init__(self,l,h,d):
self.length=l
self.height=h
self.depth=d
def __str__(self,):
self.str_info='('+str(self.length)+','+str(self.height)+','+str(self.depth)+')'
return self.str_info
def setLength(self,l):
self.length=l
def setHeight(self,h):
self.height=h
def setDepth(self,d):
self.depth=d
def getLength(self,):
return self.length
def getHeight(self,):
return self.height
def getDepth(self,):
return self.depth
b1=Box(100,100,100)
print(b1)
print('상자의 부피는:',b1.getHeight()*b1.getLength()*b1.getDepth())
# page 401 4번
class Rectangle:
def __init__(self,x,y,w,h):
self.x=x
self.y=y
self.width=w
self.height=h
def __str__(self,):
self.str_info='('+str(self.x)+','+str(self.y)+','+str(self.width)+','+str(self.height)+')'
return self.str_info
def setX(self,x):
self.x=x
def setY(self,y):
self.y=y
def setWidth(self,w):
self.width=w
def setHeight(self,h):
self.height=h
def getX(self,):
return self.x
def getY(self,):
return self.y
def getWidth(self,):
return self.width
def getHeight(self,):
return self.height
def getArea(self,):
return self.width*self.height
def overlap(self,r):
self.right_x=self.x+self.width
self.right_y=self.y+self.width
r.right_x=r.x+r.width
r.right_y=r.y+r.height
if self.x>r.right_x or r.x>self.right_x or self.y>r.right_y or r.y>self.right_y:
print('r1과 r2는 서로 겹치지 않습니다.' )
else:
print('r1과 r2는 서로 겹칩니다.')
r1=Rectangle(0,0,100,100)
r2=Rectangle(10,10,100,100)
r1.overlap(r2)
# page 402 5번
class Triangle:
def __init__(self,a1,a2,a3):
self.angle1=a1
self.angle2=a2
self.angle3=a3
self.numberofSides=3
#기본 값 3
def __str__(self,):
self.str_info=str(self.angle1)+str(self.angle2)+str(self.angle3)
return self.str_info
def setAngle1(self,a1):
self.angle1=a1
def setAngle2(self,a2):
self.angle2=a2
def setAngle3(self,a3):
self.angle3=a3
def getAngle1(self,):
return self.angle1
def getAngle2(self,):
return self.angle2
def getAngle3(self,):
return self.angle3
def checkAngles(self,):
if (self.angle1+self.angle2+self.angle3)==180:
return True
else:
return False
triangle=Triangle(90,30,60)
print(triangle.checkAngles())
# page 402 6번
class Person:
def __init__(self,name,mobile=None,office=None,email=None):
self.name=name
self.mobile=mobile
self.office=office
self.email=email
def __str__(self,):
s = ''
s += self.name + '\n'
s += "office phone:"+self.office + '\n'
s += "email address:"+self.email + '\n'
return s
#self.str_info=str(self.name)+' '+str(self.mobile)+' '+str(self.office)+' '+str(self.email)
#return self.str_info
def setName(self,name):
self.name=n
def setMobile(self,mobile):
self.mobile=m
def setOffice(self,o):
self.office=o
def setEmail(self,e):
self.email=e
def getName(self,):
return self.name
def getMobile(self,):
return self.mobile
def getOffice(self,):
return self.office
def getEmail(self,):
return self.email
p1=Person('kim',office='1234567',email='kim@company.com')
p2=Person('Park',office='2345678')
p2.setEmail('park@company.com')
# page 402 7번
class PhoneBook():
def __init__(self):
self.contacts = {}
def add(self, name, mobile=None, office=None,email=None):
p = Person(name, mobile, office, email)
self.contacts[name] = p
def __str__(self):
s = ''
for p in sorted(self.contacts):
s += str(self.contacts[p]) + '\n'
return s
obj = PhoneBook()
obj.add("Kim", office="1234567", email="kim@company.com")
obj.add("Park", office="2345678", email="park@company.com")
print(obj)
# page 403 8번
class Song:
def __init__(self,s):
self.song=[]
for i in s:
self.song.append(i)
def sing(self,):
for i in self.song:
print(i,'\n')
aSong=Song(['TWINKLE, twinkle, little star,',
'How I wonder what you are!',
'Up above the world so high,',
'Like a diamond in the sky.'])
aSong.sing()
'Python' 카테고리의 다른 글
[파워 유저를 위한 파이썬 express] 6장 PROGRAMMING (p.301) (0) | 2023.07.06 |
---|---|
[파워 유저를 위한 파이썬 express] 5장 PROGRAMMING (p.246) (0) | 2023.07.06 |
[파워 유저를 위한 파이썬 express] 4장 PROGRAMMING (p.198) (0) | 2023.07.05 |
[파워 유저를 위한 파이썬 express] 3장 PROGRAMMING (p.150) (0) | 2023.07.05 |
[파워 유저를 위한 파이썬 express] 3장 EXERCISE (p.148) (1) | 2023.07.05 |