各位程序猿,有谁知道怎么让最后运行结果正常?
怎么操作如下:运行开始,输入1,填写信息,填完后输2,输入成绩,然后不显示名字学号成绩
程序如下
class Student:
def __init__(self):
self.name="" # 姓名
self.Math=0 # 数学
self.Eng=0 # 英语
self.number="" # 学号
self.next= None
head = Student()
head.next = None
ptr = head
select = 0
while select !=2:
print("(1)新增 (2)离开:")
try:
select = int(input("请输入一个选项:"))
except:
print("输入错误请重新输入")
if select == 1:
new_data = Student()
new_data.name = input("姓名:")
new_data.number = input("学号:")
while True:
try:
new_data.Eng = int(input("英语成绩:"))
new_data.Math = int(input("数学成绩 :"))
break
except:
print("成绩信息必须输入数字类型")
ptr.next = new_data
new_data.next = None
ptr = ptr.next
print("\n\n")
ptr = head.next
Msum = Esum = num = Student_no = 0
while ptr!=None:
print("姓名 {} 学号 {} 英语成绩 {} 数学成绩{}".format(ptr.name, ptr.number, ptr.Eng, ptr.Math))
num+=1
Msum+=ptr.Eng
Esum+=ptr.Math
ptr=ptr.next
print("---------------------------------------------------")