美文网首页
Day 2584:学习

Day 2584:学习

作者: kafkaliu | 来源:发表于2024-02-22 22:55 被阅读0次

在Python中,您可以通过在属性名称前加上双下划线__来创建类中的私有属性。这种做法通常被称为“名称修饰”,它使属性名称更难以从类外部访问。虽然这并不是真正的封装,但它阻止直接访问这些属性,并表明它们是私有的。以下是一个示例代码:

python
class Student:
def init(self):
self.public_attr_name = 'Seachlann Sara'
self.__private_attr_id = 12

obj = Student()

print(obj.public_attr_name) # 访问公共属性

print(obj.__private_attr_name) # 这将引发AttributeError

但是,您仍然可以使用名称修饰来访问私有属性

print(obj._Student__private_attr_id) # 输出: 12
在上面的示例中,public_attr是一个公共属性,可以直接访问。另一方面,__private_attr是一个私有属性,不应该直接访问。尝试直接访问它将引发AttributeError。但是,您可以通过名称修饰版本'_Student__private_attr'来访问它,但这种做法是不鼓励的,因为它违反了封装原则。

相关文章

网友评论

      本文标题:Day 2584:学习

      本文链接:https://www.haomeiwen.com/subject/dhvgadtx.html