关于python的封装_,__举个例子
时间: 2024-04-29 13:27:14 浏览: 198
当我们需要将某些属性和方法隐藏起来,不让外部直接访问和修改时,我们可以使用python的封装特性。其中,下划线有两种用途:
1. 单下划线(_): 表示该属性或方法是受保护的,不应该被外部直接访问,但是可以在子类中使用。例如:
```python
class MyClass:
_protected_var = "I'm a protected variable"
obj = MyClass()
print(obj._protected_var) # 输出:I'm a protected variable
```
2. 双下划线(__): 表示该属性或方法是私有的,只能在类内部访问,外部无法访问。例如:
```python
class MyClass:
__private_var = "I'm a private variable"
def __private_method(self):
print("I'm a private method")
obj = MyClass()
print(obj.__private_var) # 这里会报错,因为私有变量不能直接访问
obj.__private_method() # 这里也会报错,因为私有方法不能直接调用
```
虽然在python中,这种访问限制并不是绝对的,但是一般情况下,我们还是尊重类内用这种方式定义的访问权限。
阅读全文