1条回答 默认 最新
- CSDN专家-天际的海浪 2021-06-21 16:13关注
#-*- coding:utf-8 -*- import json class System(): def __init__(self): self.data = [] self.load() while True: s = self.menu() if s=="1": self.inquire() elif s=="2": self.add() elif s=="3": self.delete() elif s=="4": self.revise() elif s=="5": self.save() break def load(self): try: with open("data.txt","r") as f: d = f.read() self.data = json.loads(d) except Exception: self.data = [] def save(self): with open("data.txt","w") as f: f.write(json.dumps(self.data)) def menu(self): print("********** 学生信息管理 *************") print("\t1.查询") print("\t2.添加") print("\t3.删除") print("\t4.修改") print("\t5.保存并退出") print("***********************************") return input("请输入1-5选择功能并按回车:") def inputDsta(self): return { "学号": input("输入学号:"), "姓名": input("输入姓名:"), "性别": input("输入性别:"), "年龄": input("输入年龄:"), "电话": input("输入电话:") } def inputID(self,t): while True: try: i = int(input(t))-1 if 0 <= i < len(self.data): return i else: print("输入id超出范围,请重新输入。") except ValueError: print("输入错误,请重新输入。") def inquire(self): print("id\t学号\t姓名\t性别\t年龄\t电话") for i,d in enumerate(self.data): print(f"{i+1}\t{d['学号']}\t{d['姓名']}\t{d['性别']}\t{d['年龄']}\t{d['电话']}") def add(self): self.data.append(self.inputDsta()) def delete(self): i = self.inputID("请输入要删除信息的id:") del self.data[i] print(f"id为{i+1}的信息已删除") def revise(self): i = self.inputID("请输入要修改信息的id:") self.data[i] = self.inputDsta() sys = System()
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报