接受输入并搜索关键字

时间:2016-12-15 18:45:31

标签: python python-3.x diagnostics

我正在尝试创建一个计算机诊断服务程序。我希望能够询问用户他们的问题是什么,然后从中提取关键词。然后我想打印一个解决方案。例如,用户说“我的屏幕坏了”,程序识别“屏幕”并打印出破碎屏幕的解决方案。老实说,我不知道该怎么做,我真的需要一些帮助。谢谢!

3 个答案:

答案 0 :(得分:1)

为解决方案d添加一些关键字词典,

d = {'screen': 'Get a new screen', ...}
problem = input('What did you do? ').lower()
for k in d:
    if k in problem:
        print(d[k])

对于每个关键字,请检查问题是否正确。如果是,请打印相关的解决方案

答案 1 :(得分:0)

这也有效

import re
D = {'screen': 1, 'keyboard': 2, 'mouse': 3}
keywords = set(D)
wordre = re.compile(r'\w+')

problem = "The cursor doesn't move on the screen when I move the mouse"
found = set(wordre.findall(problem.lower()))  & keywords
print(found) # prints {'mouse', 'screen'}

答案 2 :(得分:0)

您的问题未指明您的代码是否会对用户输入的范围施加任何限制。

假设用户能够在很大程度上描述他的问题(即输入原始文本而不是只键入一两句话),您可以使用summa模块。

如果您查看其文档,您会看到通过在任何文本上应用其关键字功能;你可以从中提取关键词。因此,您可以解析这些参数以打印相应的解决方案。一种简单的方法是使用您感兴趣的关键字作为关键字及其解决方案作为值来维护字典;然后只需简单地交叉检查摘要生成的关键字,就可以打印出最终的解决方案。