用python编写一个歌手类,要求:具有姓名、性别和代表作等私有数据成员。具有增加删除代表作等公有方法。具有外部属性,用来读写姓名和性别。具有外部属性,用来返回代表作
时间: 2024-03-25 12:40:00 浏览: 105
歌手.py
好的,以下是一个简单的用Python编写的歌手类示例,满足您的要求:
```python
class Singer:
def __init__(self, name, gender, masterpieces=None):
self.__name = name
self.__gender = gender
self.__masterpieces = [] if masterpieces is None else masterpieces
@property
def name(self):
return self.__name
@name.setter
def name(self, new_name):
self.__name = new_name
@property
def gender(self):
return self.__gender
@gender.setter
def gender(self, new_gender):
self.__gender = new_gender
@property
def masterpieces(self):
return self.__masterpieces
def add_masterpiece(self, new_masterpiece):
self.__masterpieces.append(new_masterpiece)
def delete_masterpiece(self, masterpiece):
if masterpiece in self.__masterpieces:
self.__masterpieces.remove(masterpiece)
```
这个歌手类包含了姓名、性别和代表作等私有数据成员,并且具有增加、删除代表作等公有方法。外部属性用来读写姓名和性别,外部属性用来返回代表作。
阅读全文