4、通过面向对象的方法设计员工类Staff,包含一个员工的姓名(name)、 性别(sex)、年龄(age), 并设计员工记录管理类StaffList来管理-组员工记录。要求:
(1)程序运行后显示 “>”的提示符;
(2)在“>”提示符后面可以输入show、insert、 update、delete 等命令实现
记录的显示、插入、修改、删除等功能;
(3) 执行一个命令后继续显示“>”提示符;
(4)如果输入 exit命令就退出系统;
(5)输入的命令不正确时会提示正确的输入命令。
题主要的代码如下,
class Staff:
def __init__(self, name,sex,age):
self.name=name
self.sex=sex
self.age=age
class StaffList:
def __init__(self):
self.staffs=[]
def run(self):
while 1:
cmd=input('>')
if cmd=="exit":
break
elif cmd=="show":
for item in self.staffs:
print(item.name,item.sex,item.age)
elif cmd=="insert":
name=input('请输入姓名:')
sex=input('请输入性别:')
age=input('请输入年龄:')
self.staffs.append(Staff(name,sex,age))
elif cmd=="update":
name=input('输入要更新用户姓名:')
staff=[x for x in self.staffs if x.name==name]
if len(staff):
staff=staff[0]
sex=input('请输入新性别:')
age=input('请输入新年龄:')
staff.sex=sex
staff.age=age
else:
print(f"用户{name}不存在")
elif cmd=="delete":
name=input('输入要删除用户姓名:')
staff=[x for x in self.staffs if x.name==name]
if len(staff):
staff=staff[0]
self.staffs.remove(staff)
else:
print(f"用户{name}不存在")
else:
print('请输入正确的命令,show、insert、update、delete、exit')
StaffList().run()
老师给的题目?