python怎样实现封装_Python——封装
时间: 2023-08-02 10:05:56 浏览: 65
在Python中,封装是通过使用特殊的访问限制符来实现的。Python中的访问限制符有两种:
1. 单下划线("_"):表示该属性或方法是“内部使用”的,虽然可以被外部访问,但不建议这样做。这种限制符是一种约定俗成的规范,程序员应该自觉遵守。
2. 双下划线("__"):表示该属性或方法是“私有的”,只能在类的内部被访问。如果外部程序试图访问,Python会将其重命名,以避免与其他类的属性或方法发生命名冲突。
下面是一个示例代码,演示如何使用封装来隐藏类的实现细节:
```
class Person:
def __init__(self, name, age):
self._name = name
self.__age = age
def display_info(self):
print("Name:", self._name)
print("Age:", self.__age)
p = Person("Tom", 20)
p.display_info()
# 尝试访问私有属性
print(p.__age)
```
输出结果为:
```
Name: Tom
Age: 20
Traceback (most recent call last):
File "test.py", line 13, in <module>
print(p.__age)
AttributeError: 'Person' object has no attribute '__age'
```
从结果可以看出,在类的内部,我们可以访问私有属性__age,但在类的外部,我们无法访问它。