首页 > 解决方案 > 如何将输入存储为全局变量?

问题描述

当谈到 python 时,我是一个绝对的新手,并且正在通过我自己的文本冒险游戏进行学习。

我有一些代码可以让用户输入他们的名字:

# player name
def playerName():
    name = ""
    name = input("Before we begin, what is your name, warrior? ") 
    print("\n")
    print("Welcome {}, now be on your way!".format(name))
    print("\n")

这就像在游戏中应该的那样工作。玩家输入他们的名字,游戏继续。但是,我希望稍后能够在不同的函数中打印玩家的输入,并继续运行名称未定义的错误消息。所以我试图将此输入存储为全局变量。我认为这是正确的方法,是吗?

我已经阅读了有关将函数存储为全局变量的信息,但这些总是由程序员指定,即name = sarah.

如何存储输入以便以后打印?我以为print("string" + name)以后就够了。但我显然误解了一些东西。

标签: pythonpython-3.xglobal-variables

解决方案


您可以将变量声明为全局变量并随时随地访问它。例如:

# player name

name = ""

def playerName():
    global name
    name = input("Before we begin, what is your name, warrior? ")
    print("\n")
    print("Welcome {}, now be on your way!".format(name))
    print("\n")

def printname():
    print(name)

playerName()
printname()

输出:

Before we begin, what is your name, warrior? hari


Welcome hari, now be on your way!


hari 

解释:

在文件的开头声明一个变量name并使用global关键字访问它。因此,代码中提到的多个函数可以访问存储在该变量中的值


推荐阅读