当前位置: 首页 > 图灵资讯 > 行业资讯> python伪私有属性的理解

python伪私有属性的理解

来源:图灵python
时间: 2024-08-21 22:10:21

1、说明

(1)确保定义类别中的属性(类别属性和实例属性)名称是唯一的,即使是同名属性,也可以区分属于哪个类别的定义属性。

(2)在属性名称前面加__双下划线,后面不加下划线,py会把这个属性转换成__className__attrName。

(3)可视为私有属性,即对外暴露的属性名称不再是定义的属性名称,而是_className__attrName。

(4)使用伪属性是为了保证唯一性,防止不同子类在多继承过程中命名相同而发生冲突。

2、实例

##private.py
classPerson:
__template_name="personinstancetemplatename"

def__init__(self,name):
self.__name=name##__name属于Person类,

defget_name(self):
returnself.__name

@staticmethod
defget_template_name():
returnPerson.__template_name

>>>p=Person("keithl")
>>>print(p.get_name())
keithl

>>>print(p._Person__name)
keithl

>>>print(p.__name)
AttributeError:'Person'objecthasnoattribute'__name'

>>>print(dir(p))

以上是对python伪私有属性的理解,希望对大家有所帮助。更多Python学习指导:python基础教程

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