標籤(空格分隔): 2018-05-10
類:具有相同屬性和方法的物件集合
物件:萬物皆物件,具體實物和行為
類的建立
class cat:
"貓類"
age=1 #類成員,特徵
#建立建構函式
def __init__(self,name,color):
self.name=name
self.color=color
return
if __name__=="__main__":
def likedo(self):
print(self.name, "like fish")
mimi=cat("小白","red") #建立乙個mimi物件
mimi.likedo()
class employee:
empcount = 0
#建立建構函式(計算員工數)
def __init__(self1, name, salary):
self1.name = name
self1.salary = salary
employee.empcount += 1
#計算員工工資
def displaycount(self):
print(self.__class__) #返回當前類名稱
print ("total employee %d" % employee.empcount)
def displayemployee(self1):
print ("name : ", self1.name, ", salary: ", self1.salary)
#建立乙個員工物件
emp1=employee("麗麗",3000)
setattr(emp1,"age",10) #沒有的時候則建立,有該屬性時則修改
print(getattr(emp1,"age")) #獲取該age屬性值
print(hasattr(emp1,"age")) #檢驗是否有
delattr(emp1,"age") #刪除屬性
print(hasattr(emp1,"age"))
內建類屬性
__dict__: 類的屬性(包括字典,由類的資料屬性組成)
__doc__:類的文件字串
__name__:放在modules模組中,就表示該模組名字;放在class類中,就表示類的名字
__moduble__:類定義所在的模組
__bases__:類的所有父類構成元素(包含了乙個由父類所組成的元組)
__main__:模組,***.py檔案本身,被執行時,對應的模組名就是__main__;可以在if__name__=="__main__":新增自己想要的,用於測試模組,演示模組用法等**。作為模組,被別的python程式匯入時,模組名就是本身***.py
類的私有
__name
兩個下劃線加名稱,屬性跟方法一樣,只能在內部呼叫
class justcounter:
__aa = 0 # 私有變數
bb = 0 # 公開變數
def count(self):
self.__aa += 1
justcounter.bb += 1
print ("私有值:",self.__aa) #私有的只能在內部呼叫
s1=justcounter()
s1.count()
s1.count()
print("公開值:",justcounter.bb)
繼承
#父類
class f1:
name="父親"
def likedo(self,color):
print(color,"喜歡散步")
#父類class m1:
name="母親"
def mm(self):
print("喜歡唱歌")
class s1(m1,f1):
def likedo(self,name):
print(name,"喜歡跳舞")
son1=s1()
son1.likedo("小明")
son1.mm()
print(son1.name)
# 子類繼承父類的屬性,方法,子類可以繼承多個父類,當兩個父類的屬性名或方法名一樣時,呼叫時選擇class s1(f1,m1)選擇第乙個
python 物件導向筆記
python 物件導向小結,最近在學習python,在學習到物件導向時有些記不住,特寫此筆記 1.定義類 class people num 0 def sayhello self print hello 2.定義物件 p people p.sayhello 3.建構函式 init class peo...
Python物件導向筆記
1.最簡單的類的定義 class student name lili age 0 sum1 0def init self,name,age,sum1 建構函式 self.name name self.age age self.sum1 sum1 defprint msg self print sel...
python物件導向筆記
封裝繼承 多型class man defeat self print 吃 def slpee self print 睡 建立乙個例項 xm man xm.eat 例項就是類建立出來的物件 dir defdemo test print 這是乙個函式 print dir demo print xm ma...