我正在研究一个项目,但我需要在函数之间传递变量,我不知道如何。我根本不擅长python。我刚开始像一个月前那样学习它。无论如何,我只想知道在函数之间传递变量的最简单方法。
我可以这样做吗?
def a():
variable1 = 0
answer = raw_input()
if answer == "a":
print "Correct"
b()
def b():
#Variable1 should now be here also right?
a()
答案 0 :(得分:2)
在您的功能b。
中添加参数def b(argument1):
print 'This is function b(), argument1=', argument1
def a():
# call func b, passing it 42 as an argument
b(42)
在Python中你可以使用全局变量,但这不是推荐的做事方式。通常应避免使用全局变量。
def b()
print 'This is function b(), globalVar1=', globalVar1
def a()
global globalVar1
globalVar1 = 88
b()
答案 1 :(得分:1)
在函数之间传递变量的最简单方法是定义接受参数的必要函数。 Check out functions -part in the official tutorial
在您的情况下,您希望将variable1
传递给b
。如此定义b
:
def b(var):
print var
# Whatever else you want to do..
def a():
variable1 = 0
answer = raw_input()
if answer == "a":
print "Correct"
b(variable1)
您的原始代码不起作用,因为函数内的变量是这些函数的本地变量。使用函数参数是执行所需操作的正确方法。