我正在完成文本游戏的好方法。一切都很好,但我在结果中看到了很奇怪的事情。当玩家在我的文本游戏中用最后两个句子回答并且在玩家计算得分之前,我看到,该程序显示了两个答案,哪个玩家在句子中写,然后显示玩家在整个游戏后获得的总分。
在这里,您可以看到我的代码,并在评论中给我一个解决方案。
您正在输入第二句和第三句。你可以通过这种方式避免这种情况:
def game():
score = 0
first_sentence = "Ala ma kota, a kot ma ... (Ale, tomka, ogon, downa): "
second_sentence = "Tylko biedronka, nie ma ... (kropek, skrzydel, ogonka): "
third_sentence = "Bez pracy nie ma ... (kolaczy, efektow, pieniedzy): "
good_answers = ['Ale', 'ogonka', 'kolaczy']
if input(first_sentence) == good_answers[0]:
second_answer = input(second_sentence)
score += 1
else:
second_answer = input(second_sentence)
if second_answer == good_answers[1]:
third_answer = input(third_sentence)
score += 1
else:
third_answer = input(third_sentence)
if third_answer == good_answers[2]:
print('Your score is:', score)
score += 1
backToGame()
else:
print('End of game.')
print('Your score is:', score)
backToGame()