python录入学生姓名性别年龄 语文数学英语各科成绩以及平均分
时间: 2024-09-28 21:12:09 浏览: 57
在Python中,我们可以构建一个更复杂的数据结构来存储每个学生的信息,并包括各科成绩和平均分。下面是一个示例,使用字典来存储每个学生的信息:
```python
class Student:
def __init__(self, name, gender, age):
self.name = name
self.gender = gender
self.age = age
self.subjects = {
"语文": None,
"数学": None,
"英语": None
}
def enter_scores(self):
for subject in ["语文", "数学", "英语"]:
while True:
try:
score = int(input(f"{subject}成绩:"))
if score < 0 or score > 100:
print("成绩必须在0到100之间,请重新输入。")
else:
self.subjects[subject] = score
break
except ValueError:
print("无效输入,请输入整数。")
def calculate_average(self):
total = sum(self.subjects.values()) if all(value is not None for value in self.subjects.values()) else 0
return total / len(self.subjects)
# 创建实例并录入信息
student = Student('张三', '男', 18)
student.enter_scores()
# 计算并输出平均分
avg_score = student.calculate_average()
print(f"{student.name}的平均分为:{avg_score}")
阅读全文