python學習 類與例項

2021-10-02 14:02:22 字數 1268 閱讀 3042

python是一門物件導向(oop)程式語言,同樣用類class實現封裝、繼承、多型,例項就是具體的物件,每個例項資料型別相同,但擁有的資料不同。方法就是與例項繫結的函式,和普通函式不同,方法可以直接訪問例項的資料;

1.類的方法在定義時第乙個引數必須為self,而普通函式定義時則不需要。例項呼叫方法時不需要傳入相應引數。

2.下劃線相關

(1)_ _foo__: 定義的是特殊方法,一般是系統定義名字 ,類似__init__()之類的。

(2)_foo: 以單下劃線開頭的表示的是 protected 型別的變數,即保護型別只能允許其本身與子類進行訪問,不能用於 from module import *

(3)__foo: 雙下劃線的表示的是私有型別(private)的變數, 只能是允許這個類本身進行訪問了。

_author_ =

'hanqingqing'

class

people

(object):

count =

4def

run(self)

:print

('people is running...'

)def

okk(self)

:print

('okkkkk'

)def

uuu(self)

:print

('3456'

)class

mainexe

(people)

:def

rat(da)

: da.run(

)def

rrr(self,grade)

:print

(grade)

people(

).uuu(

)#people()為乙個例項,例項呼叫方法時,若方法中沒有self引數,則會報錯

#people.uuu()

# '''people為類名,people.uuu()為類呼叫方法,若方法中定義了self引數,這裡需要傳入乙個例項,不然會出錯,即people.uuu(people());

#若方法中沒有定義self引數,使用people.uuu()不會出錯,也只是表示呼叫某類的某方法執行,而不是例項呼叫方法執行'''

3.isinstance()判斷物件的型別,判斷的是乙個物件是否是該型別本身,或者位於該型別的父繼承鏈上。而type()僅能判斷該型別本身。

python學習筆記 類與類的例項

一.class human object age 0 name li lei a human b human a.age 1 print a.age print b.age a.name 0 wang print a.name print b.name 執行結果 xiaoheng ubuntuxh ...

python 類與例項

私有變數 如想要內部屬性不被外部訪問,可在屬性的名稱前加上兩個下劃線 在python內部,例項的變數名如果以 開頭,就變成了乙個私有變數,只有內部可以訪問,外部不能訪問。當我們拿到乙個物件的引用時,如何知道這個物件的是什麼型別,有什麼方法?python是動態語言,根據類建立的例項可以任意繫結屬性。給...

Python類變數與例項變數學習筆記

classa aa為類變數 aa 1 xy為例項變數 def init self,x,y self.x x self.y y if name main a是例項a是乙個類 a a 2,4 這裡面xy就是例項變數,aa為類變數,a.aa會優先查詢物件的變數,找不到則向上查詢類變數 print a.aa...