编写一个歌手类Singer
,要求如下:
(1)具有私有数据成员:姓名name
、性别sex
和代表作songs
;
(2)具有外部属性用来获取和设置姓名和性别;
(3)具有外部属性可以获取代表作;
(4)具有增加代表作deposit
、删除代表作withdraw
等公有方法;
(5)增加代表作时,会验证代表作是否存在,若存在则提示“XXX”已经存在
;否则进行增加操作,并提示“XXX”已被添加
;
(6)删除代表作时,会验证代表作是否存在,若存在则进行删除操作,并提示“XXX”已被删除
;否则提示“XXX”不存在
;
(7)可编写相关的测试代码测试程序。
# **********begin**********
class Singer:
name=None
sex=None
def __init__(self,name,sex,songs):
self.__name=name
self.__sex=sex
self.__songs=songs
def get_name(self):
return self.__name
def set_name(self,nname):
self.__name=nname
def get_sex(self):
return self.__sex
def set_sex(self,nsex):
self.__sex=nsex
def songs(self):
return self.__songs
def addSong(self,nsongs):
if nsongs in self.__songs:
print(f"{nsongs}已经存在")
else:
self.__songs.append(nsongs)
print(f"{nsongs}已被添加")
def delSong(self,nsongs):
if nsongs in self.__songs:
self.__songs.remove(nsongs)
print(f"{nsongs}已被删除")
else:
print(f"{nsongs}不存在")
singer=Singer("dengziqi","female",["sss"])
singer.addSong("love story")
singer.addSong("blank space")
singer.addSong("love story")
print(f"Name:{singer.get_name()} Sex:{singer.get_sex()} Songs:{singer.songs()}")
singer.delSong("blank space")
singer.delSong("sndjafkl")
print(f"Name:{singer.get_name()} Sex:{singer.get_sex()} Songs:{singer.songs()}")
# ********** end **********