2017-07-22 12 views
-3

Ich schreibe einen einfachen Test, der zählen soll, wie oft der Benutzer mit "Ja" und "Nein" geantwortet hat. Hier ist mein Code:Zählen, wie oft eine Bedingung erfüllt ist (Python)

questions = ["Are you happy?", "Did you shower?", "Are you Turkish?", "Are you bored?", "Do you have friends?"] 

yes = 0 
no = 0 

for each in questions: 
    answers = input(each) 
    if answers == "yes": 
     yes =+ 1 
    elif answers == "no": 
     no =+ 1 

print(yes, no) 

Nach der Beantwortung entweder „Ja“ oder „Nein“ die Fragen Python Antworten Output: (0,0)

Was mache ich falsch?

EDIT: Die genaue Ausgabe erhalte ich hier:

[email protected]:~/enviroments$ python quiz.py 
Are you happy?yes 
Did you shower?no 
Are you Turkish?yes 
Are you bored?no 
Do you have friends?yes 
(0, 0) 
+1

Was gibt es zur Zeit aus, was darauf hindeutet, dass etwas nicht stimmt? – idjaw

+0

Meine schlechte, ich werde es in einer Sekunde bearbeiten. Es gibt mir 'Ouput: (0,0)' –

+2

Sie haben '= + 'an zwei Stellen geschrieben, wo ich glaube, dass Sie' + = 'schreiben wollten. –

Antwort

0

@Rafael Martínez!

Ihr Programm invertiert den erweiterten Zuweisungsoperator. Es sollte += und nicht =+

Zum Beispiel Ihrer Linie

yes =+ 1 

tatsächlich 1 auf die Variable yes setzt, nicht in einem seinen vorherigen Wert erhöht wird.

Ich wusste nicht, dass das möglich war. Danke für das interessante Beispiel.

0

Das Problem ist, Sie haben = + statt + =. Wenn Sie es zu + = ändern, wird es funktionieren

+0

Es hat für mich funktioniert –

Verwandte Themen