ITPub博客

首页 > IT职业 > IT生活 > python私有变量的本质探究

python私有变量的本质探究

IT生活 作者:wenlei 时间:2021-09-11 09:52:58 0 删除 编辑

说明

1、类定义的时候,如果声明一个实例变量的时候,使用双下划线,Python解释器将其改名,转换名称为:【_Myclass__变量名】   的名称,所以用原来的名字访问不到了。

2、知道了私有变量的新名称,就可以直接从外部访问到,并可以修改它。

实例

class Myclass:
 
    def __init__(self,name,age=18):
        self.name = name
        self.__age = age
 
    def growp(self,i = 1):   #  增加访问控制来控制age的值
        if i > 0 and i < 100:
            self.__age +=i
            return self.__age
 
a = Myclass("tom")
print(a.growp(20))  #   38
 
a.__age = 180
print(a.__age)      #   180
 
print(a.growp(20))  #   58
print(a.__dict__)   #   {'name': 'tom', '_Myclass__age': 58, '__age': 180}
 
a._Myclass__age = 500
print(a.growp(20))  #   520
print(a.__dict__)   #   {'name': 'tom', '_Myclass__age': 520, '__age': 180}

以上就是python私有变量的本质探究,希望对大家有所帮助。更多Python学习指路:python基础教程

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/3350/viewspace-2829566/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-08-30

  • 博文量
    77
  • 访问量
    712