首页 > 解决方案 > 不知道如何在 python 中更新分数

问题描述

所以我正在上编程课的介绍,我需要帮助更新我的“基于文本的冒险游戏”中的分数。发生的情况是您按下回车键,然后出现一个文本(例如,您走到飞机上寻找一只猴子),然后它显示“您的分数是 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,)

标签: python

解决方案


我不是 python 程序员,但我在为初学者问题做一些同行评审时遇到了你的帖子,我想我可以提供帮助。全局变量将解决您的问题,基于此Python 全局变量解释,以下内容应该适合您。

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”,这意味着每次调用该函数时,您都会在添加 5 之前将 x 重置为零。在我的解决方案中,我将 score 定义为全局变量,以便每次您调用它接受的 showScore() 函数只需将 5 添加到分数,然后在显示分数之前将其作为新分数保存在内存中。

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

希望这可以帮助。


推荐阅读