出现这个错误通常是因为尝试访问对象的私有属性,但是未使用正确的私有属性名称。在 Python 中,私有属性的命名规则是在属性前加上 __ (双下划线)。
比如,一个名为 Student 的类中有一个 __marks 的属性,如果要在类外面访问这个属性,应该使用 _Student__marks 的名称。
以下是一个示例代码:
class Student:
def __init__(self, name, marks):
self.name = name
self.__marks = marks
def show_marks(self):
print("Marks:", self.__marks)
s = Student("Bob", 85)
s.show_marks()
print(s._Student__marks)
在上面的代码中,我们定义了一个名为 Student 的类,其中包含一个 __marks 的属性。在类的方法中,我们使用了正确的名称访问了私有属性。
在最后一行代码中,我们还演示了在类外面使用正确的名称访问私有属性。