版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
在其它高级编程语言,如Java、C++等,均支持对属性和函数的访问控制,如public, private等关键字。而在python中,也支持对私有属性及私有方法的控制。
设置私有属性及私有方法:
-
class People:
-
-
# 初始化参数
-
def __init__(self, name):
-
self.name = name
-
self.__age =
18
# 在需要设置的属性或方法前加双下划线,即设置私有属性或私有方法
-
-
def display(self):
-
print(
'%s的年龄是%d' % (self.name, self.__age))
-
-
-
XiaoAi = People(
'小爱同学')
-
-
# 此时age属性为私有属性,不能进行外部访问,否则会报错
-
# print(XiaoAi.__age)
-
-
# 以单下划线+类名的显示,可以访问私有属性
-
print(XiaoAi._People__age)
-
-
XiaoAi.display()
总结:
在python中,并没有真正意义上的私有,实际上是对名称做了一些特殊的处理,使得外界无法访问得到。若想强制访问私有属性及方法,可在私有属性及方法名前加_类名(在日常开发中,不建议使用这种方式)。