一、名称修饰(Name Mangling)
在Python中,当你在一个类中定义一个方法,其名称以两个下划线 __
开头但不以两个下划线结尾时(例如:__private_method
),Python会对这个方法名进行名称修饰。名称修饰的实际效果是,该方法在类外部不能直接以其原始名称访问,而是被改写为 _ClassName__private_method
这样的形式。这种特性并不是为了创建真正的私有成员,而更多的是为了避免子类无意中覆盖父类的内部实现细节。然而,通过类的内部机制,还是可以访问到这些方法的。
例如:
class MyClass:
def __private_method(self):
print("This is a 'private' method."