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()
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 关于#java#的问题:找一份能快速看完mooc视频的代码
- ¥15 这种微信登录授权 谁可以做啊
- ¥15 请问我该如何添加自己的数据去运行蚁群算法代码
- ¥20 用HslCommunication 连接欧姆龙 plc有时会连接失败。报异常为“未知错误”
- ¥15 网络设备配置与管理这个该怎么弄
- ¥20 机器学习能否像多层线性模型一样处理嵌套数据
- ¥20 西门子S7-Graph,S7-300,梯形图
- ¥50 用易语言http 访问不了网页
- ¥50 safari浏览器fetch提交数据后数据丢失问题
- ¥15 matlab不知道怎么改,求解答!!