将实验4中的逻辑代码改写成类进行封装,以实现复用。
时间: 2024-03-16 20:46:45 浏览: 122
java实验类的封装
3星 · 编辑精心推荐
好的,我可以帮你解答这个问题。
首先,我们需要将实验4中的逻辑代码进行类的封装。我们可以定义一个名为`Logic`的类,这个类包含三个方法:`get_question()`、`get_answer()`、`generate_response()`。
代码如下所示:
```python
import random
class Logic:
def __init__(self):
self.questions = ["你好", "你叫什么名字", "你今年多大了"]
self.answers = ["你好呀", "我叫ChitGPT", "我还不到一岁呢"]
def get_question(self):
return random.choice(self.questions)
def get_answer(self, question):
index = self.questions.index(question)
return self.answers[index]
def generate_response(self, input_text):
question = self.get_question()
if input_text in self.questions:
response = self.get_answer(input_text)
else:
response = "我不知道你在说什么"
return response
```
在这个类中,我们将问题和对应的回答分别存储在`questions`和`answers`两个列表中。`get_question()`方法用于随机获取一个问题,`get_answer()`方法用于获取对应问题的回答。`generate_response()`方法则是生成一个回复,如果输入的文本是一个问题,则直接返回对应的回答,否则返回一个默认的回答。
使用这个类,我们可以实现复用,具体代码如下:
```python
logic = Logic()
while True:
input_text = input("你说:")
response = logic.generate_response(input_text)
print("机器人说:", response)
```
这样,我们就成功地将实验4中的逻辑代码进行了类的封装,实现了代码复用。
阅读全文