码迷,mamicode.com
首页 > 编程语言 > 详细

python—类的属性和方法总结

时间:2017-12-06 18:14:37      阅读:313      评论:0      收藏:0      [点我收藏+]

标签: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—类的属性和方法总结

标签:python

原文地址:http://blog.51cto.com/huangzp/2047973

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!