课后作业
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这个函数,会renturn fun2(baby);这样就等于是调用fun2(baby),而调用fun2(baby),第一步var = var + 'i love you',此时var变成了baby ilove you ,第二步fun3(var),最后第三步return var。那这边岂不是有两个var,一个等于baby ilove you ,一个等于小甲鱼。 因为fun3.这个函数在本题中,就是一个打酱油的
啥用都没有 wp231957 发表于 2021-3-25 11:27
因为fun3.这个函数在本题中,就是一个打酱油的
啥用都没有
那请问怎么判断这个fun3会不会起作用呢{:10_254:} zsc123xyz147 发表于 2021-3-25 14:11
那请问怎么判断这个fun3会不会起作用呢
因为fun3没有返回值,return后面的就是函数的返回值,返回值就是函数的执行结果,fun3在fun2中只是走了个过程. 画个圈圈XZQ 发表于 2021-3-25 16:24
因为fun3没有返回值,return后面的就是函数的返回值,返回值就是函数的执行结果,fun3在fun2中只是走了个过 ...
def fun2():
def fun3():
var1 = ' 小甲鱼 '
return var1
fun3()
那像这样创建一个函数,我在调用fun2()时,什么都没有出来,就是因为少了return是么
对,调用fun2(),虽然执行了fun3(),但是并没有返回 fun3() 这个值,要在fun3()前面加return才行,小甲鱼下面的return属于fun3() 画个圈圈XZQ 发表于 2021-3-25 21:49
对,调用fun2(),虽然执行了fun3(),但是并没有返回 fun3() 这个值,要在fun3()前面加return才行,小甲鱼下面的r ...
明白了,感谢大佬
页:
[1]