2017-02-20 7 views
0

Hallo Ich habe hier eine Frage über das Finden von Wörtern in einem Problem-Frageprogramm. Wie kann ich eine Komponente hinzufügen, die die Fragen nach Schlüsselwörtern prüft, bevor die Antworten ausgegeben werden?passende Wörter in Python

print ("Introduction Text") 
print ("Explanation of how to answer questions") 
Q1 = input ("Is your phone Android or Windows?") 
if Q1 == "yes": 
    print ("go to manufacturer") 
if Q1 == "no": 
    print ("next question") 
Q2 = input ("Is your screen cracked or broken?") 
if Q2 == "yes": 
    print ("Replace Screen") 
if Q1 == "no": 
    print ("next question") 
Q3 = input ("Does the handset volume turn up and down?") 
if Q1 == "no": 
    print ("replace Hardware") 
    print ("contact Manufacturer") 
if Q1 == "yes": 
    print ("next question") 
+0

Was sind die Schlüsselwörter? – WhatsThePoint

Antwort

0

Python strings haben einige nützliche Methoden wie find, die Sie für Zeichenketten suchen lassen. Es gibt auch die Bibliothek regular expression, die für komplexere Zeichenkettensuchen sorgt. Was Sie jedoch tun können, ist uns in, um eine Sub-String-Suche durchzuführen. Nehmen Sie erste Frage als Beispiel, können wir prüfen, ob der Benutzer „Ja“ beantwortet, und ob der Telefontyp ist „Android“ von folgenden etwas wie die Verwendung von:

>>> answer = input("Is your phone Android or Windows?") 
Is your phone Android or Windows?"Yes android" 
>>> if "yes" in answer.lower(): 
...  if "android" in answer.lower(): 
...    print "What android..." 
... 
What android... 

Wenn Sie schon ein bekam Liste der Telefontypen (Windows, Android) Sie Schleife über diese Liste kann, und prüfen Sie, ob oder nicht any der Artikel im String vorhanden sind, oder Sie können Liste Verständnis benutzen, die es ganz einfach macht:

>>> answer = input("Is your phone Android or Windows?") 
Is your phone Android or Windows?"Yes, I've got a Windows and Android phone..." 
>>> matching = [s for s in phone_types if s in answer.lower()] 
>>> print matching 
['windows', 'android'] 

Was Sie hinzufügen möchten, wird abhängig von ein paar Dingen wie der Liste (n), gegen die Sie suchen möchten usw. Also, je nachdem, was Sie tatsächlich brauchen, können Sie hinzufügen einige weitere Informationen zu Ihrer Frage.