入学生成绩(0-100),并解决异常 输入以后判断等级,大于60分为合格(大于80分为优秀),小于60分为不合格(大于50分补考,小于50分为重修)
时间: 2024-12-10 16:45:47 浏览: 9
入学生成绩的评估通常会包括以下几个步骤:
1. **数据验证**:首先检查输入的分数是否在0到100的范围内,超出这个范围的分数视为无效。
```python
def validate_score(score):
if score < 0 or score > 100:
return False, "成绩必须在0到100之间"
else:
return True, None
```
2. **等级判定**:根据给定的规则划分等级。
```python
def classify_grade(score):
if score >= 80:
grade = "优秀"
elif score >= 60:
grade = "合格"
elif score >= 50:
grade = "需要补考"
else:
grade = "重修"
return grade
```
3. **处理异常情况**:将得分转换为实际的描述,并处理可能出现的特殊情况。
```python
def process_score(score):
is_valid, error_msg = validate_score(score)
if not is_valid:
return {"status": "错误", "message": error_msg}
grade = classify_grade(score)
return {"status": "成功", "grade": grade}
# 示例
score = 75
result = process_score(score)
print(result) # 输出:{"status": "成功", "grade": "合格"}
```
如果输入的成绩不在指定范围内,函数会返回一个包含错误状态和消息的对象,如`{"status": "错误", "message": "成绩必须在0到100之间"}`。
阅读全文