请dalao解释一下为什么这个会打印 Baby I love you
var = ' Hi 'def fun1():
global var
var = ' Baby '
return fun2(var)
def fun2(var):
var += 'I love you'
fun3(var)
return var
def fun3(var):
var = ' 小甲鱼 '
print(fun1()) 调用fun1,重新赋值var为Baby,返回调用fan2的值;
fun2返回var的值。var的值由于已经全局改成了Baby,加上fun2中字符串的自加操作,结果就是baby i love you heidern0612 发表于 2020-5-25 16:26
调用fun1,重新赋值var为Baby,返回调用fan2的值;
fun2返回var的值。var的值由于已经全局改成了Baby,加 ...
那var='hi'就不起作用吗?那fun1()代码中global var是什么意思呢? ELAINELIANG_ 发表于 2020-5-25 16:40
那var='hi'就不起作用吗?那fun1()代码中global var是什么意思呢?
var hi的值被Baby替换了。
你学的太片面了,基本学到函数这,global就知道怎么用了。
还是再仔细看看书吧。
页:
[1]