第十次Python作業打卡

2021-10-09 23:59:37 字數 1907 閱讀 4028

十四 類與物件

14.1物件 = 屬性 + 方法

物件是類的例項。換句話說,類主要定義物件的結構,然後我們以類為模板建立物件。類不但包含方法定義,而且還包含所有例項共享的資料。

1 封裝:資訊隱蔽技術

我們可以使用關鍵字 class 定義 python 類,關鍵字後面緊跟類的名稱、分號和類的實現。

class

turtle

:# python中的類名約定以大寫字母開頭

"""關於類的乙個簡單例子"""

# 屬性

color =

'green'

weight =

10 legs =

4 shell =

true

mouth =

'大嘴'

# 方法

defclimb

(self)

:print

('我正在很努力的向前爬...'

)def

run(self)

:print

('我正在飛快的向前跑...'

)def

bite

(self)

:print

('咬死你咬死你!!'

)def

eat(self)

:print

('有得吃,真滿足...'

)def

sleep

(self)

:print

('困了,睡了,晚安,zzz'

)tt = turtle(

)print

(tt)

# <__main__.turtle object at 0x0000007c32d67f98>

print

(type

(tt))#

print

(tt.__class__)

# print

(tt.__class__.__name__)

# turtle

tt.climb(

)# 我正在很努力的向前爬...

tt.run(

)# 我正在飛快的向前跑...

tt.bite(

)# 咬死你咬死你!!

# python類也是物件。它們是type的例項

print

(type

(turtle)

)#

2 繼承:子類自動共享父類之間資料和方法的機制

3 多型:不同物件對同一方法響應不同的行動

14.2 self

python的self相當於c++的this指標

14.3 魔法方法__init__

init__是乙個建構函式,這個函式預設是沒有引數的,如果我們需要給類的例項的屬性初始化一些值,這是就要用到__init__函式了。

魔法方法__new

__new__的主要作用是當我們需要繼承一些不可變的class時(如str,tuple,int),提供給你乙個自定義這些類的例項化的過程。

class

ball

:def

__init__

(self, name)

: self.name = name

defkick

(self)

:print

("我叫%s,該死的,誰踢我..."

% self.name)

a = ball(

"球a"

)b = ball(

"球b"

)c = ball(

"球c"

)a.kick(

)# 我叫球a,該死的,誰踢我...

b.kick(

)# 我叫球b,該死的,誰踢我...

第十次作業

linux網路服務 osi七層模型 物理層 傳輸介質,組網 資料鏈路層 mac位址定址,資料成幀,資料檢測,重發apr 網路層 將網路位址轉化為實體地址,網路位址定址,路由 ip協議 傳輸層 提供端對端的資料交換,連線,埠 會話層 提供點對點的連線 表示層 資料格式化 應用層 應用程式,服務 tcp...

第十次作業

1.將以下文法消除左遞迴,分析符號串 i i i e e t t t t f f f e i 解 文法改寫 e te e te t ft t ft f e i first集 first e first e first t first t first f follow集 follow e follow...

第十次作業

1,簡述string類中的equals方法與object類中的equals方法的不同點。i string類的equals方法比較的是內容,object類中的equals方法比較的是記憶體位址 2,編寫程式,scanner 當以年 月 日的格式輸入乙個日期時,輸出其該年是否為閏年,該月有幾天,該日是星...