在不同的函数中使用相同的变量。(Python)
这里的新手,我目前正在写一个“游戏”在前36的LearnPythonTheHardWay 如果我想在一个函数中询问用户名。我怎样才能回忆起所有其他函数中的persones name,而无需再次请求它,或再次将其设置为name?根据我的理解,函数中的变量不会影响其他函数,但如果我希望它影响其他函数呢在不同的函数中使用相同的变量。(Python),python,function,variables,constants,Python,Function,Variables,Constants,这里的新手,我目前正在写一个“游戏”在前36的LearnPythonTheHardWay 如果我想在一个函数中询问用户名。我怎样才能回忆起所有其他函数中的persones name,而无需再次请求它,或再次将其设置为name?根据我的理解,函数中的变量不会影响其他函数,但如果我希望它影响其他函数呢 def room_1(): name = raw_input("What is your name?") print "hi %s" % name def room_7():
def room_1():
name = raw_input("What is your name?")
print "hi %s" % name
def room_7():
print "Hi %s" % name
请求名称时应将其声明为全局,以便在其他函数中使用:
def room_1():
global name
name = raw_input("What is your name?")
print "hi %s" % name
def room_7():
print "Hi %s" % name
请求名称时应将其声明为全局,以便在其他函数中使用:
def room_1():
global name
name = raw_input("What is your name?")
print "hi %s" % name
def room_7():
print "Hi %s" % name
请求名称时应将其声明为全局,以便在其他函数中使用:
def room_1():
global name
name = raw_input("What is your name?")
print "hi %s" % name
def room_7():
print "Hi %s" % name
请求名称时应将其声明为全局,以便在其他函数中使用:
def room_1():
global name
name = raw_input("What is your name?")
print "hi %s" % name
def room_7():
print "Hi %s" % name
有两种方法,第一种是创建一个类并设置一个名为
playername
的属性。比如:
class Game(object):
def __init__(self,playername=None):
if playername is None: self.playername = raw_input("What's your name? ")
else: self.playername = playername
# initialize any other variables here
def run(self):
# all your code goes here, and self.playername
# is always your player's name.
game = Game()
game.run()
另一个被广泛地(正确地)反对。你可以用一个全球性的
global name
name = raw_input("What is your name? ")
现在,只要不覆盖任何函数中的name
,它们就可以调用name
,并像访问局部变量一样访问它
编辑:看起来你正在尝试构建一个游戏,它应该实现一个几乎肯定超出你现在能力范围的功能。你当然可以不用它,但是代码总是有“意大利面条”的感觉<代码>类游戏是迈向FSM的第一步,但还有很长的路要走:)两种方法,第一种方法是创建一个类并设置一个名为
playername
的属性。比如:
class Game(object):
def __init__(self,playername=None):
if playername is None: self.playername = raw_input("What's your name? ")
else: self.playername = playername
# initialize any other variables here
def run(self):
# all your code goes here, and self.playername
# is always your player's name.
game = Game()
game.run()
另一个被广泛地(正确地)反对。你可以用一个全球性的
global name
name = raw_input("What is your name? ")
现在,只要不覆盖任何函数中的name
,它们就可以调用name
,并像访问局部变量一样访问它
编辑:看起来你正在尝试构建一个游戏,它应该实现一个几乎肯定超出你现在能力范围的功能。你当然可以不用它,但是代码总是有“意大利面条”的感觉<代码>类游戏是迈向FSM的第一步,但还有很长的路要走:)两种方法,第一种方法是创建一个类并设置一个名为
playername
的属性。比如:
class Game(object):
def __init__(self,playername=None):
if playername is None: self.playername = raw_input("What's your name? ")
else: self.playername = playername
# initialize any other variables here
def run(self):
# all your code goes here, and self.playername
# is always your player's name.
game = Game()
game.run()
另一个被广泛地(正确地)反对。你可以用一个全球性的
global name
name = raw_input("What is your name? ")
现在,只要不覆盖任何函数中的name
,它们就可以调用name
,并像访问局部变量一样访问它
编辑:看起来你正在尝试构建一个游戏,它应该实现一个几乎肯定超出你现在能力范围的功能。你当然可以不用它,但是代码总是有“意大利面条”的感觉<代码>类游戏是迈向FSM的第一步,但还有很长的路要走:)两种方法,第一种方法是创建一个类并设置一个名为
playername
的属性。比如:
class Game(object):
def __init__(self,playername=None):
if playername is None: self.playername = raw_input("What's your name? ")
else: self.playername = playername
# initialize any other variables here
def run(self):
# all your code goes here, and self.playername
# is always your player's name.
game = Game()
game.run()
另一个被广泛地(正确地)反对。你可以用一个全球性的
global name
name = raw_input("What is your name? ")
现在,只要不覆盖任何函数中的name
,它们就可以调用name
,并像访问局部变量一样访问它
编辑:看起来你正在尝试构建一个游戏,它应该实现一个几乎肯定超出你现在能力范围的功能。你当然可以不用它,但是代码总是有“意大利面条”的感觉<代码>类游戏是迈向FSM的第一步,但还有很长的路要走:)现在你可以在函数外定义一个变量,然后用
全局
关键字调用它
通常情况下,您会使用一个类来完成这类事情,但最终您会实现:o)
现在,您可以在函数外部定义一个变量,然后使用
global
关键字调用它
通常情况下,您会使用一个类来完成这类事情,但最终您会实现:o)
现在,您可以在函数外部定义一个变量,然后使用
global
关键字调用它
通常情况下,您会使用一个类来完成这类事情,但最终您会实现:o)
现在,您可以在函数外部定义一个变量,然后使用
global
关键字调用它
通常情况下,您会使用一个类来完成这类事情,但最终您会实现:o)
你熟悉物体吗?这就是通常存储状态(玩家的姓名、位置等)的方式。可以使用全局变量,但不应该。使用globals通常是一种不好的做法。您熟悉对象吗?这就是通常存储状态(玩家的姓名、位置等)的方式。可以使用全局变量,但不应该。使用globals通常是一种不好的做法。您熟悉对象吗?这就是通常存储状态(玩家的姓名、位置等)的方式。可以使用全局变量,但不应该。使用globals通常是一种不好的做法。您熟悉对象吗?这就是通常存储状态(玩家的姓名、位置等)的方式。可以使用全局变量,但不应该。使用globals通常是一种不好的做法。