封装(Encapsulation)是一种将数据和操作数据的方法组合在一起的编程技术。通过封装,我们可以隐藏对象的内部实现细节,只暴露必要的接口给外部使用。这样可以保护对象的数据不被外部直接修改,提高了代码的安全性和可维护性。

在Python中,封装可以通过以下几种方式实现:

  1. 使用类(Class):

```python class Person: def init(self, name, age): self.__name = name # 私有属性 self.__age = age # 私有属性

def get_name(self):
    return self.__name

def set_name(self, name):
    if isinstance(name, str):
        self.__name = name
    else:
        print("Invalid name")

def get_age(self):
    return self.__age

def set_age(self, age):
    if isinstance(age, int) and age >= 0:
        self.__age = age
    else:
        print("Invalid age")

```

  1. 使用模块(Module):

```python

person.py

class Person: def init(self, name, age): self.name = name self.age = age

def get_name(self):
    return self.name

def set_name(self, name):
    self.name = name

def get_age(self):
    return self.age

def set_age(self, age):
    self.age = age

```

然后在其他模块中使用这个类:

```python from person import Person

p = Person("Alice", 30) print(p.get_name()) # 输出:Alice p.set_name("Bob") print(p.get_name()) # 输出:Bob

print(p.get_age()) # 输出:30 p.set_age(31) print(p.get_age()) # 输出:31 ```

通过这两种方式,我们可以实现对数据的封装和保护。