定義乙個矩形類,擁有屬性:長、寬 擁有方法:求周長、求面積
class
rectangle
:def
__init__
(self, length, width)
: self.length = length
self.width = width
defperimeter
(self)
:return
(self.length + self.width)*2
defarea
(self)
:return self.length * self.width
a1 = rectangle(10,
20)print
('周長'
, a1.perimeter())
print
('面積'
, a1.area(
))
定義乙個二維點類,擁有屬性:x座標、y座標 擁有方法:求當前點到另外乙個點的距離
class
point
:def
__init__
(self, x, y)
: self.x = x
self.y = y
deflength
(self, other)
:return
((self.x - other.x)**2
+(self.y - other.y)**2
)**(0.5
)p1 = point(4,
5)p2 = point(1,
1)print
(p1.length(p2)
)
定義乙個圓類,擁有屬性:半徑、圓心 擁有方法:求圓的周長和面積、判斷當前圓和另乙個圓是否外切
class
circle
:def
__init__
(self, r, center=point(0,
0)):
self.r = r
self.center = center
defis_exterior_contact
(self, other)
:return self.r + other.r == self.center.length(other.center)
c1 = circle(10)
c2 = circle(
20, point(30,
0))result = c1.is_exterior_contact(c2)
print
(result)
定義乙個線段類,擁有屬性:起點和終點, 擁有方法:獲取線段的長度
class
line
:def
__init__
(self, x, y)
: self.x = x
self.y = y
deflength
(self, other)
:return
((self.x - other.x)**2
+(self.y - other.y)**2
)**0.5a1 = line(0,
0)a2 = line(3,
4)print
('線段的長度:'
, a1.length(a2)
)
定義乙個狗類和乙個人類:
狗擁有屬性:姓名、性別和品種 擁有方法:叫喚
人類擁有屬性:姓名、年齡、狗 擁有方法:遛狗
class
dog:
def__init__
(self, name, gender, breed)
: self.name = name
self.gender = gender
self.breed = breed
defcry(self)
:return f'名叫的會汪汪汪的'
d1 = dog(
'旺財'
,'公狗'
,'哈士奇'
)d1.cry(
)class
mankind
:def
__init__
(self, name, age, dog)
: self.name = name
self.age = age
self.dog = dog
defwalkdog
(self)
:return f'歲的在溜'
+ self.dog.cry(
)p1 = mankind(
'小李',18
, d1)
print
(p1.walkdog(
))
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...
day17 物件導向作業
定義乙個矩形類,擁有屬性 長 寬 擁有方法 求周長 求面積 class orthogon def init self,long 0 wide 0 self.long long self.wide wide defperimeter self print 周長 self.long self.wide ...