标签: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
原文地址:http://blog.51cto.com/huangzp/2047973