十五 、python 类的属性

本文深入探讨了对象实例化的过程,以及对象属性的种类,包括公有属性、私有属性和内置属性,并通过示例代码展示了如何在Python中创建和访问这些属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对象的创建过程称之为实例化:
当一个对象呗创建后,包括三个方面的特性:对象句柄、属性和方法。
句柄用于区分不同的对象
对象的属性和方法与类中的成员变量和成员函数对应
obj=Myclass() //创建类的一个实例(对象)通过对象来调用方法和属性
类的属性:
类的属性分为公有属性和私有属性,类的属性范围觉得于属性的名称
公有属性:在类中和类外都能被调用
私有属性:不能再类外及被类外的函数调用,定义方式:以"__"双下划线开始的成员变量就是私有属性,可以通过instance,_classname_attribute方式访问
内置属性:由系统在定义类的时候默认添加,由前后双下划线构成,dic,module
例如:
__age 是私有属性,
在外部访问私有属性:ren._People__age (不建议使用,
想使用私有属性,可以调用内部的函数来访问私有属性

#!/usr/bin/python

class People(object):
    color = 'yellow'
    __age = 30

    def think(self):
        self.color = "black"
        print "I am a %s" % self.color
        print "I am a thinker"
        print self._age

ren = People()
print ren.color
ren.think()
print ren._People__age
print (ren.__dict__)

运行:

[root@jie class_demo]# python 1.py
yellow
I am a black
I am a thinker
30
{'color': 'black'}

类的属性小结:
类属性:也是公有属性
类的私有属性
对象的公有属性
对象的私有属性
内置属性
函数的局部变量、全局变量
示例:

[root@server2 class_demo]# cat shuxin.py
#!/usr/bin/env python
#coding:utf8

class Myclass(object):
    var1="类属性,类的公有属性 var1"
    __var2="类的私有属性 __var2"

    def func1(self):
	self.var3="对象的公有属性 var3"
	self.__var4="对象的私有属性 __var4"
	var5="函数的局部变量 var5"

    def func2(self):
	print ("func2..内部方法调用")
	print self.var1
	print self.__var2
	print self.var3
	print self.__var4

#__var2不能访问
mc=Myclass()
print mc.var1

#执行了类中的方法 才能调用方法其中的值
mc.func1()
print mc.var3

mc.func2()

运行示例:

[root@server2 class_demo]# python shuxin.py
类属性,类的公有属性 var1
对象的公有属性 var3
func2..内部方法调用
类属性,类的公有属性 var1
类的私有属性 __var2
对象的公有属性 var3
对象的私有属性 __var4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值