昨天钻牛角尖了,总以为return返回的值可以运行,其实是return可以返回任何值,可以返回字符串,函数内存地址巴拉巴拉,然后出现了这么一个例子:
def test1():
return 1
def test2():
print('test2')
return test1
res = test2()
print(res())
这个代码里面首先声明两个函数,然后运行test2,打印一个test2之后把test1的内存地址给res,然后再运行一下res就是运行了test1,之后再return 1就返回了一个1,所以输出结果是test2 和 1
个人理解是,他返回什么就让他返回好了~但是你要用的话,用的是他返回的结果
在这里也可以用test()()()
来表示运行一个函数中的三层嵌套,有几层嵌套想运行到那层就可以用几个括号,但是要注意,这里不是直接跳到那一层去单一运行他,而是一层一层运行,一直运行到那一层
对于return来说如果return后面的是函数,name返回函数内存地址,如果return函数名()
这样的话return需要等待函数运行完,把结果放到这个位置,return才能运行