隨便寫寫Python day17 物件導向作業

2021-10-13 10:04:00 字數 2888 閱讀 6618

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

class

rectangle

:def

__init__

(self, length=

0, width=0)

: self.length = length

self.width = width

defperimeter

(self)

:return2*

(self.length+self.width)

defarea

(self)

:return self.length*self.width

r1 = rectangle(3,

5)print

(r1.perimeter())

print

(r1.area(

))

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

class

point

:def

__init__

(self, x_coord=

0, y_coord=0)

: self.x_coord = x_coord

self.y_coord = y_coord

defdistance

(self, other)

:return

((self.x_coord-other.x_coord)**2

+(self.y_coord - other.y_coord)**2

)**0.5p1 = point(3,

5)p2 = point(7,

9)print

(p1.distance(p2)

)

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

class

circle

: pai =

3.14159

def__init__

(self, radius=

0, x=

0, y=0)

: self.radius = radius

self.x = x

self.y = y

defperimeter

(self)

:return

2*self.radius*circle.pai

defarea

(self)

:return circle.pai*self.radius**

2def

circumscribed

(self, other)

: lenth1 = self.radius + other.radius

lenth2 =((

(self.x)**2

-(other.x)**2

)+((self.y)**2

-(other.y)**2

))**0.5

if lenth1 == lenth2:

return

'外切'

else

:return

'不外切'

c1 = circle(3,

0,6)

c2 = circle(3,

0,0)

print

(c1.circumscribed(c2)

)

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

class

segment

:def

__init__

(self, begin=

0, finish=0)

: self.begin = begin

self.finish = finish

deflength

(self)

:if self.begin <0:

self.begin =

-self.begin

if self.finish <0:

self.finish =

-self.finish

return self.begin+self.finish

s1 = segment(-3

,5)print

(s1.length(

))

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

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

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

class

dog:

def__init__

(self, name, ***, breed)

: self.name = name

self.*** = ***

self.breed = breed

defbark

(self)

:return

'馬狗狗叫'

class

human

:def

__init__

(self, name, age, dog)

: self.name = name

self.age = age

self.dog = dog

defwalk_dog

(self)

:if self.dog:

print

(f'溜'

)else

:print

(f'沒有馬狗'

)

python day17 正式學習

目錄注意事項 模組不來總結了,直接去看吧 包是模組的一種形式,包的本質就是乙個含有.py的檔案的資料夾。模組的第乙個版本只有10個功能,但是未來在擴充套件版本的時候,模組名和用法應該最好不要去修改,但是這只是對使用者友好,而由於版本擴充套件,檔案越來越大,模組設計者對模組的管理 維護會越來越複雜,因...

隨便寫寫Python day5 列表作業

1.已知乙個數字列表,求列表中心元素。list1 90 45,52 10,89 67,55 32,69 100 length len list1 if length 1 0 print list1 length 2 else print list1 length 2 1 list1 length 2...

隨便寫寫Python day6 列表作業

1.生成50 300之間可重複的 10個資料 存放於列表中,保證列表中元素的順序,對列表進行排重,並對列表使用排序演算法進行降序排序 例如 隨機生成了 70,88,91,70,107,234,91,177,282,197 去重之後 70,88,91,107,234,177,282,197 降序排序 ...