Day17物件導向作業

2021-10-13 09:55:36 字數 2486 閱讀 4871

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

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 ...