python中return的返回和执行实例
1打印函数名和打印函数的执行过程的区别
例子1.1
defa(): print(111) print(a)#打印a函数的内存地址,不会对a函数有影响,a函数不会执行 print(a())#打印a函数的打印部分,并打印a函数的返回值
打印结果:
111 None
总结:
打印函数名print(a),结果是把该函数的内存地址打印出来了。
打印函数的执行:print(a()),打印该函数的执行程序中的print的部分,最后把return的内容也打印出来,没有定义return的函数打印None。
例子1.2
defa(): print(111) returnNone defb(): returna()#打印a函数中打印的部分,返回a函数的返回值。打印:111,返回None print(b)#打印b函数的内存地址 print(b())#打印b函数中打印的部分,打印b函数的返回值
打印结果:
111 None
代码过程解析如下:
print(b)打印变量b(函数)的内存地址,不会对b函数有任何的影响,b函数不会执行。
print(b()):
《1》先执行b函数。由于b函数没有定义主体内容,返回空
《2》打印b函数的返回值:returna()。由于此时的b函数在运行的,所以return里面的函数也会运行。
《2.1》,运行a(),打印111出来。
《2.2》,由于a()函数里面没有定义return的值,取none作为a()函数的返回值,也把这nonereturn给b函数。此时的b函数的返回值也是none,所以print(b())=None
2,函数内容主体中执行:
例子2.
defa(): print('aaaaaaaa')#打印:aaaaaaaa defb(): a()#执行a函数 b()#执行b函数
打印结果:
aaaaaaaa
3,在函数的return中执行:
例子3.
defa(): print('aaaaaaaa') defb(): returna() b()
打印结果:
aaaaaaaa
总结:当一个函数执行的时候,若该函数的return内容是一个可执行的程序的时候,该程序也会正常的执行。不过此时的返回值的概念是:打印该程序中的print部分,并返回该函数的返回值,若没有定义返回值就返回None
4,打印函数名(本质就是打印变量名对应的内存地址:也就是该函数对应的内容主体的内存地址)
例子4.
defa(): print(111)#打印:111 print(a)#打印a函数的内存地址 defb(): returna#返回a函数的内存地址 print(b)#打印b函数的内存地址
returna()的情况:尽管这次return的是a(),但由于b()函数并没有调用,仍然还是打印两个函数的内存地址
5,函数中的return中的内容是常量和变量(可执行的函数)的情况下的函数执行问题
return中为一个常量时:因为b()函数里面是空的。而return的a是个常量,就是一个内存地址
例子5.1.
defa(): print(111)#打印:111 defb(): returna#返回a函数的内存地址 b()
return中是一个变量(可执行的函数),则当b函数运行时,b函数的主体和return里面的程序都会运行,效果如下:
例子5.2
defa(): print(111) defb(): returna()#打印a函数中打印的部分,返回a函数的返回值 b()
打印结果:
111
6,打印传递参数的高阶函数的返回值,一定要理解a(f)就是在执行a函数
例子6.1
deff(): print(11111111)#执行结果11111111 returnNone defa(b): print(222222)#执行结果222222 returnb#执行结果返回b函数的内存地址 print(a(f))#打印a函数中打印的部分,打印a函数的返回值。打印a函数中的打印部分:222222,打印a函数的返回值也就是打印f函数的内存地址
解析:打印a(f)函数的整个过程相当于打印不带参数的print(a())的过程!!!!,即a(b)函数会被执行并且打印返回值。
print(a(f)):打印a函数中打印的部分,并且打印a函数的返回值,也就是print(222222)和print(f)
同理:给一个高阶函数传参后赋值也会执行该函数,例如:
例子6.2
deff(): print(11111111)#执行结果打印:11111111 returnNone defa(n): print(222222)#执行结果打印:222222 returnf#打印f函数中的打印部分,返回f函数的返回值。执行结果:111111returnNone b=a(f)
上例中的b=a(f)分两步理解:
1,a(f),相当于不带参数的a(),意思是执行a函数,a(f)就是导入参数f的情况下执行该函数
2,b=a(f),就是把a(f)函数运行后的返回值赋值给b,供后续的变量b来调用。
以上这篇python中return的返回和执行实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。