定义 Student 类,其中含有属性 name 和 number(分别对应学生 的姓名和学号),在__init__函数中接受值并初始化这两个属性,含 有方法 prin(输出学生的姓名和学号),方法 study(输出‘xxx 正在 写作业!’); Student_cs 类继承 Student 类,并且含有私有属性 score(为一个 字典,初值为{“Python”:0,“Java”:0,“C”:0}),含有方法 prin (输出学生的姓名和学号),方法 study(输出‘xxx 正在写作业!’, 并输出‘xxx 正在编程序!’),方法 input_score(依次接受 score 中 三门课程的成绩),方法 print_score(输出 score 的信息);
时间: 2024-03-26 08:42:02 浏览: 156
好的,以下是代码实现:
```python
class Student:
def __init__(self, name, number):
self.name = name
self.number = number
def prin(self):
print("姓名:", self.name)
print("学号:", self.number)
def study(self):
print(self.name, "正在写作业!")
class Student_cs(Student):
def __init__(self, name, number):
super().__init__(name, number)
self.__score = {"Python": 0, "Java": 0, "C": 0}
def prin(self):
super().prin()
def study(self):
super().study()
print(self.name, "正在编程序!")
def input_score(self):
for k in self.__score:
self.__score[k] = int(input("请输入{}成绩:".format(k)))
def print_score(self):
for k, v in self.__score.items():
print("{}成绩:{}".format(k, v))
```
以上代码中,我们首先定义了一个名为Student的类,包含了两个实例属性:姓名和学号。在类的初始化方法__init__中,我们将传入的name和number分别赋值给实例属性self.name和self.number。另外,我们还定义了两个方法:prin和study,用于打印学生的姓名和学号,以及输出学生正在写作业的信息。
然后,我们定义了一个名为Student_cs的类,继承自Student类。在类的初始化方法__init__中,我们首先调用父类的初始化方法super().__init__(name, number),将传入的name和number分别赋值给实例属性self.name和self.number。然后,我们定义了一个私有属性__score,初值为{"Python": 0, "Java": 0, "C": 0},用于存储学生的三门课程成绩。另外,我们还定义了四个方法:prin、study、input_score和print_score。
在方法prin中,我们调用了父类的prin方法,打印出学生的姓名和学号。在方法study中,我们首先调用了父类的study方法,输出学生正在写作业的信息,然后再输出学生正在编程序的信息。在方法input_score中,我们通过循环依次接受score中三门课程的成绩,并将其存储到__score字典中。最后,在方法print_score中,我们循环遍历__score字典,打印出三门课程的成绩信息。
使用示例:
```python
# 创建一个学生对象
stu = Student_cs("张三", "2022001")
# 打印学生信息
stu.prin() # 姓名: 张三 学号: 2022001
# 调用study方法
stu.study() # 张三 正在写作业! 张三 正在编程序!
# 输入成绩并打印成绩信息
stu.input_score()
stu.print_score()
# 输入:请输入Python成绩:90
# 请输入Java成绩:85
# 请输入C成绩:95
# 输出:Python成绩:90
# Java成绩:85
# C成绩:95
```
以上代码中,我们首先创建了一个名为stu的学生对象,并将其姓名和学号分别设置为“张三”和“2022001”。然后,我们调用了prin方法,打印出了学生的姓名和学号。
接着,我们调用了study方法,输出学生正在写作业的信息和正在编程序的信息。然后,通过调用input_score方法,输入了学生的三门课程成绩,并通过调用print_score方法,打印出了成绩信息。
阅读全文