python创建一个person类,包含private成员 姓名,性别,年龄成员变量
时间: 2025-01-05 17:46:52 浏览: 6
在Python中,我们可以使用`__`前缀来声明私有属性,但是Python并没有强制性的私有属性机制,因为它是动态类型的。不过,通常我们约定,不以`_`开头的属性是公共的,以`_`开头的被认为是内部实现细节。下面是一个简单的例子,展示如何创建一个名为`Person`的类,其中包含了姓名、性别和年龄这样的私有成员变量:
```python
class Person:
def __init__(self, name, gender, age):
# 使用双下划线来声明私有变量,但实际上不会阻止外部访问
self.__name = name
self._gender = gender # 实际上这里不需要双下划线,因为我们不打算直接从外部获取性别
self.__age = age
# 提供getter方法来间接访问私有变量
def get_name(self):
return self.__name
def set_name(self, name):
self.__name = name
def get_gender(self): # 需要明确说明这是获取性别
return self._gender
def get_age(self):
return self.__age
# 创建实例并尝试访问私有变量
p = Person("张三", "男", 30)
print(p.get_name()) # 可以通过getter方法访问
```
阅读全文