写出“创建一个学生类和一个教师类,并用这两个类分别创建对象,编写程序实现教师向学生提问,学生回答老师提问的行为。”的代码,并讲解这个代码
时间: 2024-10-22 21:29:25 浏览: 16
这是一个简单的面向对象编程示例,我们将使用Python来演示如何创建学生和教师类,并实现它们之间的交互。首先,我们需要定义`Student`和`Teacher`两个类。
```python
# 定义Student类
class Student:
def __init__(self, name):
self.name = name
# 展示回答能力的方法
def answer_question(self, question):
return f"{self.name}正在思考...然后回答:{question}"
# 定义Teacher类
class Teacher:
def ask_question(self, student):
return f"老师 {self.__class__.__name__} 向 {student.name} 提问:"
# 实例化对象
student1 = Student("小明")
teacher1 = Teacher()
# 教师向学生提问并打印学生的回答
question = "请问今天学了什么?"
answer = teacher1.ask_question(student1) + student1.answer_question(question)
print(answer)
```
在这个例子中,`Student`类有一个`answer_question`方法用于模拟回答问题,`Teacher`类有一个`ask_question`方法用于发起提问。我们创建了一个`Student`对象`student1`和一个`Teacher`对象`teacher1`。当教师询问学生时,会调用`student1`的`answer_question`方法返回答案。
**相关问题:**
1. 这段代码体现了面向对象编程的哪些特性?
2. 如果想让教师可以同时管理多个学生,应该如何修改代码?
3. Python中如何更优雅地处理类的实例化和交互?
阅读全文