def show_stu(lst): format_title = '{:^6}\t{:^12}\t{:^8}\t{:^10}\t{:^10}\t{:^6}\t{:^14}' print(format_title.format('id', '姓名', '英语成绩', 'python成绩', '数学成绩', '数据结构成绩', '总成绩')) print('=======================================================================================') format_data = '{:^6}\t{:^12}\t{:^8}\t{:^10}\t{:^10}\t{:^16}\t{:^8}' for i in lst: print(format_data.format(i.get('id'), i.get('name'), i.get('english'), i.get('python'), i.get('math'), i.get('data'), int(i.get('english')) + int(i.get('python')) + int(i.get('math')) + int( i.get('data')))) x = input('按任意键继续...')写出上面这段代码的伪代码
时间: 2023-08-25 13:04:48 浏览: 85
定义函数show_stu,输入参数为一个列表lst
定义格式化字符串format_title,用于输出表头
输出表头
定义格式化字符串format_data,用于输出每个学生的信息
遍历lst列表中的每个元素i,输出学生信息,使用get方法获取每个学生的属性值
调用int函数将每个学生的四科成绩相加,计算总成绩
在输出学生总成绩时,使用字符串拼接的方式将四科成绩相加的结果添加到format_data字符串中
提示用户按任意键继续
相关问题
def show(): # 显示所有学生信息 stu_lst = [] if os.path.exists(filename): with open(filename, 'r', encoding = 'UTF-8') as r_file: stu = r_file.readlines() for i in stu: stu_lst.append(eval(i)) if stu_lst: show_stu(stu_lst) else: print('\n暂未保存过数据!')写出上面这段代码的伪代码
定义函数show,没有输入参数
定义空列表stu_lst
如果文件存在,则打开文件
将文件内容按行读入到列表stu中
遍历stu列表中的每个元素i,使用eval函数将其转换为字典类型,添加到stu_lst列表中
如果stu_lst列表不为空,则调用show_stu函数,展示学生信息
否则,提示暂未保存过数据
帮我分析一下代码import os class Student: def __init__(self,no,name,chinese,math,english):#初始化变量 self.no = no self.name = name self.chinese = int(chinese) self.math = int(math) self.english = int(english) class StudentList: def __init__(self): self.stulist = [] def show(self): #显示学生信息 print('{:8}\t{:8}\t{:8}\t{:8}\t{:8}' .format('学号','姓名','语文','数学','英语')) for stu in self.stulist: print('{:8}\t{:<8}\t{:<8}\t{:<8}\t{:<8}' .format(stu.no,stu.name,stu.chinese,stu.math,stu.english))#左对齐 def __enterScore(self,message): #成绩输入 while True: try: score = input(message) if 0 <= int(score) <= 100: break else: print("输入错误,成绩应在0到100之间") except: print("输入错误,成绩应在0到100之间") return score def __exists(self,no): #判断学号是否存在 for stu in self.stulist: if stu.no == no: return True else: return False def insert(self): #添加学生信息 while True: no = input('学号:') if self.__exists(no): print('该学号已存在') else: name = input('姓名:') chinese = self.__enterScore('语文成绩:')#括号传入为message math = self.__enterScore('数学成绩:') english = self.__enterScore('英语成绩:') stu = Student(no,name,chinese,math,english) self.stulist.append(stu) choice = input('继续添加(y/n)?').lower() if choice =='n': break elif choice =='y': continue else: print('您输入只能是y/n!') break def delete(self): #删除学生信息 while True: no = input('请输入要删除的学生学号:') for stu in self.stulist[::]:
这是一个Python代码,主要包含两个类:Student和StudentList。Student类用于表示学生信息,包括学号、姓名、语文、数学和英语成绩等属性。StudentList类用于管理学生信息列表,包括添加学生、删除学生、显示学生信息等操作。
在代码中,__init__方法用于初始化变量,show方法用于显示学生信息,__enterScore方法用于输入成绩,__exists方法用于判断学号是否存在,insert方法用于添加学生信息,delete方法用于删除学生信息。
需要注意的是,__enterScore和__exists方法都是私有方法,即只能在类内部使用,不能在类外部直接调用。insert和delete方法是公共方法,可以在类外部直接调用。
此外,代码中还用到了一些Python的基本语法,如for循环、if语句、try-except语句等。
阅读全文