我试图在这个游戏中保持得分,所以我设置了一个得分变量,每次正确回答答案时,它会增加+1分,如果得到错误的答案,它将扣除一个点。当我在结尾打印得分时,它仍然等于0。
score = 0
q1answer = ("metallica", "slayer", "megadeth", "anthrax")
answerinput = str(input("name one of the 'Big Four' metal bands'"))
if answerinput.lower() in q1answer:
print ("You got the right answer!")
score + 1
else:
print ("That is the wrong answer...")
score - 1
print (score)
答案 0 :(得分:2)
您的score + 1
只是一个表达式,不会更改score
变量的实际值。它与0 + 1
基本相同,因为python只会获得score
的值,并将1
添加到它收到的值,而不是变量本身。
要解决此问题,您需要重新指定score
以匹配其当前值加一:score = score + 1
或更简单的版本:score += 1
。要删除分数,只需使用减号:score = score - 1
或更简单的score -= 1
答案 1 :(得分:1)
score + 1
和score - 1
只是表达式;他们实际上什么都不做。要实际更改score
,请使用score += 1
和score -= 1
。
(另外,使用一套!大括号!如前所述;)
)