什么叫私有变量,python中表示私有变量是__(双下划线)加变量名表示,为什么要私有,就好像你老子又不是什么东西都想给你,开个玩笑哈哈哈哈,那究竟是为什么呢,第一你发现我们想改某个属性的时候,是没有限制的,第二我们有些东西是不想被外面直接修改的,第三我们有时候读都不想让读的,所以.........看下面把:
class student():
def __init__(self,name,age):
self.name=name
self.__age=age
student1=student('陈逸灏',20)
print(student1.age)
你会发现会报错——AttributeError: 'student' object has no attribute 'age'
原因是这个变量是类里面私有的,外面无法访问,那句有人会想我age找不到,那__age不就可以了吗,然后
class student():
def __init__(self,name,age):
self.name=name
self.__age=age
student1=student('陈逸灏',20)
print(student1.__age)
继续报错————AttributeError: 'student' object has no attribute '__age',这就说明不是这个原因,我们如果想看这个属性究竟是什么,可以用print(student1.__dict__)打印出我们student1这个对象的所有属性,结果如下:
{'name': '陈逸灏', '_student__age': 20}
从上面可以看到其实我们的属性是_student__age,也就是_类名加上__属性名,这也其实是python的障眼法,其实就是把变量名改了,但这样其实也没有做到真正的私有化,所以我们要学习下面的方法:
class wife():
def __init__(self,name,age,weghit):
self.name=nam

本文探讨了Python中变量封装的概念,解释了为何需要私有变量,并通过示例展示了如何通过双下划线(__)实现变量的私有化。通过get和set方法以及@property装饰器,讨论了如何在保持变量私有性的同时,实现对其的访问和修改。
最低0.47元/天 解锁文章
504

被折叠的 条评论
为什么被折叠?



