将上述代码在不改变原有功能情况下3用另一种写法表达
时间: 2023-06-20 17:05:44 浏览: 96
SQL中代替Like语句的另一种写法
以下是使用 lambda 函数和列表推导式来实现上述代码的另一种写法:
```
responses = {
"你好": ["你好啊!", "您好!"],
"你叫什么名字": ["我叫 ChitGPT", "我的名字是 ChitGPT"],
"今天天气怎么样": ["今天天气很好", "今天天气非常不错", "今天天气晴朗"],
"谢谢": ["不用谢", "不客气", "您太客气了"]
}
def generate_response(user_input):
return next((responses[key][randint(0, len(responses[key])-1)] for key in responses if key in user_input), "我不明白你在说什么")
while True:
user_input = input("用户: ")
print("ChitGPT: " + generate_response(user_input))
```
这种写法使用了 lambda 函数和列表推导式来遍历字典中的键,并返回键对应的值列表中的一个随机元素。如果用户输入中没有匹配的键,则返回默认值 "我不明白你在说什么"。
阅读全文