被python折磨的第四天

2021-09-26 07:31:09 字數 2039 閱讀 3665

2019.8.19

物件導向程式設計基礎

把一組資料結構和處理它們的方法組成物件(object),把相同行為的物件歸納為類(class),通過類的封裝(encapsulation)隱藏內部細節,通過繼承(inheritence)實現類的特化(specialization)和泛化(generalization),通過多型(polymorphism)實現基於物件型別的動態分派

一、類和物件

物件是類的例項。一切皆為物件,物件都有屬性(靜態特徵)和行為(動態特徵)。

二、定義類

關鍵字 class

class

student

(object):

#__init__是乙個特殊方法用於在建立物件是進行初始化操作

#通過這個方法我們可以為學生物件繫結name和age兩個屬性

def__init__

(self,name,age):

self.name = name

self.age = age

defstudy

(self,course_name)

:print

('%s正在學習%s.'

(self.name,course_name))

說明: 寫在類中的函式,我們通常稱之為(物件的)方法,這些方法就是物件可以接收的的資訊

三、建立和使用物件

class

class_name

(object):

def__init__

((self)

: self.a =

1000

defa

(self)

:print

('karry roy jackson'

)if __name__ ==

"__main__"

: joker = class_name(

)#()相當於走了初始化__init__

joker.a(

)#類中呼叫需要使用「.」

print

(joker.a)

(base) c:\users\administrator>f:

/install/anaconda/python.exe d:

/vscode/untitled-mon1.py

karry roy jackson

1000

四、訪問可見性問題在python中,屬性和方法的訪問許可權只有兩種,也就是公開的和私有的,如果希望屬性是私有的,在給屬性命名時可以用兩個下劃線作為開頭,下面的**可以驗證這一點。

class

test

:def

main()

: test = test(

'hello'

)# attributeerror: 'test' object has no attribute '__bar'

test.__bar(

)#私有屬性

# attributeerror: 'test' object has no attribute '__foo' #私有屬性

print

(test.__foo)

if __name__ ==

"__main__"

: main(

)

五、面對物件的支柱物件導向有三大支柱:封裝、繼承和多型

課堂練習

列印進度條

讀取檔案中大寫字母個數

學習python 第四天

python 迴圈結構 迴圈結構可以輕鬆的控制某件事重複 再重複的發生。在python中構造迴圈結構有兩種做法,一種是for in迴圈,一種是while迴圈。for in迴圈 如果明確的知道迴圈執行的次數或者是要對乙個容器進行迭代 後面會講到 那麼我們推薦使用for in迴圈 用for迴圈實現1 1...

Python學習 第四天

map函式可以對序列中個每個值進行某種批量轉化操作,然後將結果作為迭代器iterator返回,迭代器可以利用for迴圈或者next 函式來訪問每個值。map函式接收兩個引數,乙個是函式f,乙個是iterator,map在iterable的每個元素上依次執行函式f,並把結果作為新的iterator迭代...

學習python,第四天

echo 內容 a 將內容放到檔案裡 ls lh a 會覆蓋原有內容 echo a 追加到末尾 不會覆蓋原有內容 管道 ls lha more shutdown關機 shutdown now立刻關機 shutdown r重啟 shutdown c取消 shutdown 10 00十點關機 shutd...