day17 物件導向作業 1

2021-10-13 09:59:47 字數 1838 閱讀 1616

定義乙個矩形類,擁有屬性:長、寬 擁有方法:求周長、求面積

class rectangle:

def __init__(self, long, width):

self.long = long

self.width = width

def perimeter(self):

return (self.long + self.width) * 2

def area(self):

return self.long*self.width

定義乙個二維點類,擁有屬性:x座標、y座標 擁有方法:求當前點到另外乙個點的距離

class dot:

def __init__(self, x, y):

self.x = x

self.y = y

def distance(self, other):

return ((self.x-other.x)**2+(self.y-other.y)**2)**0.5

定義乙個圓類,擁有屬性:半徑、圓心 擁有方法:求圓的周長和面積、判斷當前圓和另乙個圓是否外切

class circle:

pi = 3.14159

def __init__(self, r, centerx, centery):

self.r = r

self.centerx = centerx

self.centery = centery

def perimeter(self):

return 2*circle.pi*self.r

def area(self):

return circle.pi * self.r**2

def ditance(self, other):

if self.r + other.r == (self.centerx - other.centerx)**2 + (self.centery-other.centery)**0.5:

return print('外切')

else:

print('不外切')

定義乙個線段類,擁有屬性:起點和終點, 擁有方法:獲取線段的長度

class segment:

def __init__(self, x, y):

self.x = x

self.y = y

def long(self, other):

return ((self.x-other.x)**2 + (self.y-other.y)**2)**0.5

定義乙個狗類和乙個人類:

狗擁有屬性:姓名、性別和品種 擁有方法:叫喚

class dog:

def __init__(self, name, ***, breed):

self.name = name

self.*** = ***

self.breed = breed

def skill(self):

return f'在叫喚'

人類擁有屬性:姓名、年齡、狗 擁有方法:遛狗

class human:

def __init__(self, name, age, dog):

self.name = name

self.age = age

self.dog = dog

def skill(self):

return f'在遛'

Day17物件導向作業

定義乙個矩形類,擁有屬性 長 寬 擁有方法 求周長 求面積 class rectangle def init self,length,width self.length length self.width width defperimeter self return self.length self...

day17 物件導向作業

定義乙個矩形類,擁有屬性 長 寬 擁有方法 求周長 求面積 class rectangle def init self,length,width self.length length self.width width defperimeter self return self.length 2 se...

day17 物件導向作業

定義乙個矩形類,擁有屬性 長 寬 擁有方法 求周長 求面積 class rectangular def init self,x,y self.long x self.width y defcalculate self l self.long self.width 2 s self.long self...