我是一个非常开始的程序员,我正在尝试为大学的教授创建一个年级书计划,以便他可以输入他的期中和期末考试成绩,并为每门课程的每个学生获得平均和字母成绩。该程序应该获得课程编号,课程级别,考试数量和学生信息(ID和考试分数)的输入。
最初,我想创建一个以ID为键,平均值为值的字典,但是那似乎不起作用,所以我开始尝试创建带条件的while循环。
基本上,代码是一团糟,我不确定自己做错了什么。我已经看过教程并在线阅读了很多东西,但是我为此感到困惑。一方面,我在第22行的elif语句中不断收到无效语法错误。任何人都可以给予的任何帮助,我们将不胜感激!对于我在这里遗漏的任何内容,我们会提前道歉-我是新来的。
谢谢!
print("Hello! Welcome to your Grading Program!\n")
courseCode = input("Please enter the course code : ")
courseLevel = input("Please enter the course level : ")
numberExams = float(input("Please enter the number of exams : "))
enterStudents = input("Would you like to input a student, Yes or No? : ")
student = 0
while enterStudents == "Yes" or "yes" or "y" or "Y" :
if courseLevel == "undergrad" or "Undergrad" or "undergraduate" or "u" or "U":
for student in range(int(numberExams)):
ID = input("Please enter student ID: ")
midterm = int(float(input("Please enter midterm score: ")))
finalExam = int(float(input("Please enter final exam score: ")))
undAverage = (midterm * .60) + (finalExam * .40)
elif courseLevel == "grad" or "Grad" or "Graduate" or "g" or "G":
for student in range(int(numberExams)):
ID = input("Please enter student ID: ")
midterm = int(float(input("Please enter midterm score: ")))
finalExam = int(float(input("Please enter final exam score: ")))
undAverage = (midterm * .30) + (finalExam * .70)
elif enterStudents == "No" or "no" or "n" or "N" :
print("\nSee you next time!")
else:
enterStudents == "" :
input("Invalid Entry! Would you like to input a student, Yes or No?:")
def Grade():
for letter in Grade:
total = 100
for letter in Grade(A,B,C,D,E,F):
if undGrade == "A":
undAverage >= range(85,101)
elif undGrade == "B":
undAverage >= range(70,85)
elif undGrade == "C":
undAverage >= range(55,70)
elif undGrade == "D":
undAverage >= range(40,55)
elif undGrade == "F":
undAverage >= range(0,40)
print(Grade)
您的or
陈述应“完整”。
elif courseLevel == "grad" or "Grad" or "Graduate" or "g" or "G":
需要成为:
elif courseLevel == "grad" or courseLevel == "Grad" or courseLevel == "Graduate" or courseLevel == "g" or courseLevel == "G":
比较容易做到这一点:
elif courseLevel.lower() in ['grad', 'graduate', 'g']:
.lower():
迎合忽略区分大小写的单词
in []:
在列表/数组中查找项目
此外(归功于@Ashwini),while-elif
不存在任何组合。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句