2016-12-15 6 views
0

Ich versuche, ein Programm zu erstellen, das ein Computerdiagnosedienst ist. Ich möchte in der Lage sein, den Benutzer zu fragen, was sein Problem ist, und dann Schlüsselbegriffe daraus zu extrahieren. Dann möchte ich eine Lösung drucken. Wenn der Benutzer beispielsweise sagt "Mein Bildschirm ist kaputt", erkennt das Programm "Bildschirm" und druckt die Lösung für einen fehlerhaften Bildschirm. Ich habe ehrlich gesagt keine Ahnung wie ich das machen soll und ich brauche wirklich Hilfe. Vielen Dank!Unter Eingabe und Suche nach einem Schlüsselwort

Antwort

1

mit einigen Wörterbuch von Schlüsselwörtern zu Lösungen 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]) 

Für jedes Keyword, überprüfen, ob es in dem Problem. Wenn ja, Drucken Sie die zugehörigen Lösungs

+0

danke! super hilfreich –

+0

Wie würde ich diesen Code ändern, so dass er die Schlüsselwörter und Lösungen aus einer Textdatei liest? –

+0

@ mr.python Wie ist diese Textdatei formatiert? –

0

Dies funktioniert auch

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'} 
0

Ihre Frage ist nicht festgelegt, wenn Ihr Code keine Einschränkungen in Bezug auf den Umfang der Eingabe des Benutzers verhängen.

Unter der Annahme, dass der Benutzer in der Lage sein wird, sein Problem in großem Umfang zu beschreiben (d. H. Eingabe Rohtext im Gegensatz zu nur ein oder zwei Sätze eingeben) können Sie das summa Modul verwenden.

Wenn Sie sich die Dokumentation ansehen, werden Sie feststellen, dass die Funktion keywords auf jeden Text angewendet wird. Sie können Schlüsselwörter daraus extrahieren. Folglich können Sie diese Argumente analysieren, um die entsprechenden Lösungen zu drucken. Eine einfache Möglichkeit besteht darin, ein Wörterbuch mit Ihren Schlüsselbegriffen als Schlüssel und deren Lösungen als Werte zu verwalten. und dann überprüfen Sie einfach die summa generierten Keywords gegen diese, um Ihre endgültige Lösung zu drucken.

+0

gibt, aber seine neueste Version ist 0.0.7. Das ist ein wenig beängstigend. – Gribouillis

+0

Ich bin nicht wirklich sicher, was Sie mit beängstigend meinen. Summa ist die Implementierung eines (veröffentlichten) Textverarbeitungsalgorithmus; das gilt für seine wissenschaftliche Glaubwürdigkeit (zumindest bis zu einem gewissen Grad). In diesem Fall glaube ich nicht, dass seine Versionsnummer etwas damit zu tun hat, ob diese Implementierung in einem frühen Stadium und daher nicht vollständig abgeschlossen ist. – kingJulian

+0

Aus irgendeinem Grund kann ich die Website von summa nicht erreichen. – Gribouillis

Verwandte Themen