19讲 屏蔽全局变量
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())
求助大佬
1.请问fun2(var) 里 var +='I love you' 屏蔽了var = 'Baby' 屏蔽了 var = 'Hi'了吗?
2.def fun2(var):
var += 'I love you'
fun3(var)---------------------这句把var = 'Baby I love you' 给到了fun3(),fun3()里var = '小甲鱼'屏蔽了fun2里var = 'Baby I love you',屏蔽了var = 'Hi'了吗?
return var
3.def fun2(var):
var += 'I love you'
fun3(var)-----这句把var = 'Baby I love you' 给到了fun3(),fun3()为什么不返回'小甲鱼呢'?
return var
描述的不是很清楚,谢谢鱼友 本帖最后由 zltzlt 于 2020-7-25 20:01 编辑
1. fun2(var) 屏蔽了全局变量的 var,fun2(var) 中的 var 表示传递给 fun2() 的参数 var = ' Baby'
2. 是的
3. 因为 fun3() 函数并没有返回 var,而且 fun2() 中也没有将 fun3() 返回的结果赋值给一个变量,只是单纯调用。fun3() 中的 var = '小甲鱼' 只是将 fun3 中的局部变量 var 赋值为 '小甲鱼',并不会影响全局变量 var 与 fun2() 的局部变量 var @heidern0612 帮忙把帖子分下类~ zltzlt 发表于 2020-7-25 19:59
1. fun2(var) 屏蔽了全局变量的 var,fun2(var) 中的 var 表示传递给 fun2() 的参数 var = ' Baby'
2. 是 ...
谢谢大佬,我发错地方了
页:
[1]