时间:2021-05-23
1 打印函数名和打印函数的执行过程的区别
例子1.1
def a(): print(111)print(a) # 打印a函数的内存地址,不会对a函数有影响,a函数不会执行print(a()) # 打印a函数的打印部分,并打印a函数的返回值打印结果:
<function a at 0x0000000001D02E18>111None总结:
打印函数名print(a),结果是把该函数的内存地址打印出来了。
打印函数的执行:print(a( )),打印该函数的执行程序中的print的部分,最后把return的内容也打印出来,没有定义return的函数打印None。
例子1.2
def a(): print(111) return Nonedef b(): return a() # 打印a函数中打印的部分,返回a函数的返回值。打印:111,返回Noneprint(b) # 打印b函数的内存地址print(b()) # 打印b函数中打印的部分,打印b函数的返回值打印结果:
<function b at 0x00000000021EB8C8>111None代码过程解析如下:
print(b) 打印变量b(函数)的内存地址,不会对b函数有任何的影响,b函数不会执行。
print( b() ) :
《1》先执行b 函数。由于b函数没有定义主体内容,返回空
《2》打印b函数的返回值:return a() 。由于此时的b函数在运行的,所以return里面的函数也会运行。
《2.1》,运行 a() ,打印 111出来。
《2.2》,由于a() 函数里面没有定义return的值,取none作为a()函数的返回值, 也把这none return 给b函数。此时的b函数的返回值也是none,所以print(b())= None
2,函数内容主体中执行:
例子2.
def a(): print('aaaaaaaa') # 打印:aaaaaaaadef b(): a() # 执行a函数b() # 执行b函数打印结果:
aaaaaaaa3,在函数的return中执行:
例子3.
def a(): print('aaaaaaaa')def b(): return a()b()打印结果:
aaaaaaaa总结:当一个函数执行的时候,若该函数的return内容是一个可执行的程序的时候,该程序也会正常的执行。不过此时的返回值的概念是:打印该程序中的print部分,并返回该函数的返回值,若没有定义返回值就返回None
4,打印函数名(本质就是打印变量名对应的内存地址:也就是该函数对应的内容主体的内存地址)
例子4.
def a(): print(111) # 打印:111print(a) # 打印a函数的内存地址def b(): return a # 返回a函数的内存地址print(b) # 打印b函数的内存地址return a() 的情况: 尽管这次return的是a() ,但由于b()函数并没有调用,仍然还是打印两个函数的内存地址
5,函数中的 return中的内容是常量和变量(可执行的函数)的情况下的函数执行问题
return中为一个常量时: 因为b()函数里面是空的。而return的a是个常量,就是一个内存地址
例子5.1.
def a(): print(111) # 打印:111def b(): return a # 返回a函数的内存地址b()return中是一个变量(可执行的函数),则当b函数运行时,b函数的主体和return里面的程序都会运行,效果如下:
例子5.2
def a(): print(111)def b(): return a() # 打印a函数中打印的部分,返回a函数的返回值b()打印结果:
1116,打印传递参数的高阶函数的返回值,一定要理解a(f)就是在执行a函数
例子6.1
def f(): print(11111111) # 执行结果 11111111 return Nonedef a(b): print(222222) # 执行结果 222222 return b # 执行结果 返回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
def f(): print(11111111) # 执行结果 打印:11111111 return Nonedef a(n): print(222222) # 执行结果 打印:222222 return f # 打印f函数中的打印部分,返回f函数的返回值。执行结果:111111 return Noneb = a(f)上例中的b =a(f) 分两步理解:
1,a(f) ,相当于不带参数的a(),意思是执行a函数,a(f) 就是导入参数 f 的情况下执行该函数
2,b= a(f), 就是把a(f)函数运行后的返回值 赋值给b,供后续的变量b来调用。
以上这篇python中return的返回和执行实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
python中return的用法1、return语句就是把执行结果返回到调用的地方,并把程序的控制权一起返回程序运行到所遇到的第一个return即返回(退出de
本文实例讲述了Python中return语句用法。分享给大家供大家参考。具体如下:return语句:return语句用来从一个函数返回即跳出函数。我们也可选从函
我们知道return语句用在某一个方法中,一是用于返回函数的执行结果,二是用于返回值为void类型的函数中,仅仅是一个return语句(return;),此时用
首先比较下return与yield的区别:return:在程序函数中返回某个值,返回之后函数不在继续执行,彻底结束。yield:带有yield的函数是一个迭代器
1.return的返回值问题,函数中return一旦有返回值,就不在执行下面的语句,直接跳到函数调用的地方。如下PHP函数代码,第一个if条件符合则函数值返回布