不知道如何在python中更新分数

时间:2018-09-18 20:45:58

标签: python

因此,我正在入门编程课程,我需要帮助更新“基于文本的冒险游戏”中的得分。发生的情况是,按Enter键,然后出现一个文本(例如,您走到飞机上找到一只猴子),然后说“您的分数是5”。我想要它,所以每当我按Enter键时,文本就会出现,然后我的分数会提高5。我花了几个小时阅读我的​​课本,但我不知道该怎么做。除了showScore函数之外,其他一切都很好,因为它在每步操作之后始终将我的分数打印为5。

这是代码示例:

def promptUser():

    input("\n<Press Enter to continue...>\n")

def base():

    print("You approach the base with friends")

def showScore():

    x = 0
    score = x + 5
    print("Your score is now" ,score,)

3 个答案:

答案 0 :(得分:0)

尝试使用:

def showScore():
   score = 0
   score = score + 5
   print('Your score is now',score)

答案 1 :(得分:0)

我不是python程序员,但遇到一些初学者问题的同行评审时遇到了您,我认为我可以帮上忙。全局变量将解决您的问题,基于此Python Global Variabl explaination,以下内容应为您工作。

score = 0

def promptUser():

    input("\n<Press Enter to continue...>\n")

def shelter():

    print("You approach the base with friends")

def showScore():

    score = score + 5
    print("Your score is now" ,score)

当前,您正在showScore()函数中定义变量'x',这意味着每次调用该函数时,都将x重置为零,然后再添加5。在我的解决方案中,我将score定义为Global变量,因此每次调用showScore()函数时,它都会接受5的分数,然后在显示分数之前将其作为新分数保存在内存中。

这可能会解决您当前的问题,但在现实世界中,最好有一个专门用于更改分数的功能,该功能应与显示分数的功能分开。

希望这会有所帮助。

答案 2 :(得分:0)

您是否尝试过在函数之前放置 score = 0,然后在 score = score +5 之前放置 global score?