编写出一个通用的人员类(person),该类具有姓名(name)、性别( sex)、年龄(age)等域。然后对person类的继承得到一个学生类( student),该类能够存放学生的5门课的成绩,并
时间: 2023-05-02 08:05:10 浏览: 159
这是一个关于创建一个通用的人员类(person),该类具有姓名(name)、性别(sex)、年龄(age)等属性。后继承得到一个学生类(student),该类能够存放学生的5门课的成绩,并显示其平均值。
相关问题
编写出一个通用的人员类(Person),该类具有姓名(Name)、年龄(Age)、性别(Sex)等域。然后对Person 类的继承得到一个学生类(Student),该类能够存放学生的5门课的成绩,并能求出平均成绩
好的,我会为您解答这个问题。
首先,可以定义一个Person类,具有姓名、年龄、性别等属性:
```python
class Person:
def __init__(self, name, age, sex):
self.name = name
self.age = age
self.sex = sex
```
然后,我们可以定义一个Student类,它继承自Person类,新增加了成绩(Grade)属性:
```python
class Student(Person):
def __init__(self, name, age, sex, grades):
super().__init__(name, age, sex)
self.grades = grades
```
在Student类中,我们可以新增一个方法,用来计算学生的平均成绩:
```python
def average_grade(self):
return sum(self.grades) / len(self.grades)
```
这样,我们就可以使用Student类来存储学生的信息,并计算其平均成绩了。
下面是一个使用示例:
```python
# 创建一个学生对象
student = Student('张三', 18, '男', [80, 90, 85, 92, 88])
# 计算学生的平均成绩
average_grade = student.average_grade()
# 输出学生的信息和平均成绩
print('姓名:', student.name)
print('年龄:', student.age)
print('性别:', student.sex)
print('平均成绩:', average_grade)
```
输出结果如下:
```
姓名: 张三
年龄: 18
性别: 男
平均成绩: 87.0
```
python编写出一个通用的人员类(Person),该类具有姓名(Name)、年龄(Age)、性别(Sex)等域。 然后对Person 类的继承得到一个学生类Student),该类能够存放学生的5门课的成绩,并能求出平均成绩。
好的,下面是一个简单的实现:
```python
class Person:
def __init__(self, name, age, sex):
self.name = name
self.age = age
self.sex = sex
class Student(Person):
def __init__(self, name, age, sex, grades):
super().__init__(name, age, sex)
self.grades = grades
def average_grade(self):
return sum(self.grades) / len(self.grades)
```
这里我们定义了一个`Person`类,它有`name`、`age`和`sex`三个属性。然后我们定义了一个`Student`类,它继承自`Person`类,并且新增了一个`grades`属性表示学生的5门课的成绩列表。最后我们定义了一个`average_grade`方法,用于求出学生的平均成绩。
你可以通过以下代码来测试:
```python
student = Student("Tom", 18, "male", [90, 85, 92, 88, 95])
print(student.name)
print(student.age)
print(student.sex)
print(student.grades)
print(student.average_grade())
```
输出结果应该为:
```
Tom
18
male
[90, 85, 92, 88, 95]
90.0
```
这里我们创建了一个名叫Tom的学生对象,并对其进行了测试。
阅读全文