python—類的屬性和方法總結
阿新 • • 發佈:2017-12-06
python一、類的屬性總結(類的屬性定義在方法外,對象的屬性定義在方法內)
理解:
類的(靜態)屬性:(人類的五官,理解為變量)
類的(動態)方法:(人類吃穿住行,理解為一個函數,至少帶一個參數self,指向類本身)
對象:類的實例化,之後才能有屬性和方法
1)類的屬性,也是公有屬性;類的私有屬性
2)對象的公有屬性;對象的私有屬性
3)函數局部變量;全局變量
4)內置屬性
#!/usr/bin/env python #encoding:utf-8 var6 = "全局變量var6" class Myclass(object): var1 = "類的公有屬性var1" __var2 = "類的私有屬性_var2" def fun1(self): self.var3 = "方法的公有屬性var3" self.__var4 = "方法的私有屬性_var4" var5 = "函數的局部變量var5" print var5 print var6 def fun2(self): print self.var1 print self.__var2 def fun3(self): print self.var3 print self.__var4 mc = Myclass() print mc.var1 # 外部調用類的公有屬性 print mc._Myclass__var2 # 外部調用類的私有屬性,一般測試用 print Myclass.var1 # 通過類名調用類的公有屬性 #print Myclass.__var2 # 不能通過類名調用類的私有屬性 #print Myclass.var3 # 不能通過類名調用內部函數的公有屬性和私有屬性 #print Myclass.__var4 mc.fun1() print mc.var3 # 外部調用方法(可以看成是帶self的內部函數)的公有屬性,前提是先實例化類並執行該方法 #print mc.__var4 # 外部不能調用方法的私有屬性 mc = Myclass() mc.fun2() # 內部調用類的公有、私有屬性 mc = Myclass() mc.fun1() mc.fun3() # 內部函數可調用其他內部函數的公有、私有屬性,前提是先實例化類並執行該方法 mc = Myclass() print Myclass.__dict__ # 內置屬性調用
python—類的屬性和方法總結