Quantcast
Channel: CodeSection,代码区,Python开发技术文章_教程 - CodeSec
Viewing all articles
Browse latest Browse all 9596

python中函数与函数之间的调用,总是晕菜,整理如下,有不对或者补充的请提出来~

$
0
0

1.python函数基础


python中函数与函数之间的调用,总是晕菜,整理如下,有不对或者补充的请提出来~

函数名: fun

函数体:1~3行

返回值:2

调用函数:fun() ,只有见到这个括号(),程序会根据函数名从内存中找到函数体,然后执行它。

2.函数的执行顺序


python中函数与函数之间的调用,总是晕菜,整理如下,有不对或者补充的请提出来~

下面的fun将上面的fun覆盖掉了,因此,在Python中代码的放置位置是有要求的,不能随意摆放,函数体要放在被调用的语句之前。

3.函数的调用

第一种情况:


python中函数与函数之间的调用,总是晕菜,整理如下,有不对或者补充的请提出来~

x(f), 注意 :x(f)中的f没有加括号(),即 f为参数 。将f作为参数传入x(),x()中的y()函数返回的是y即函数名所以没有执行y函数。所以最终打印出为无结果。

第二种情况:


python中函数与函数之间的调用,总是晕菜,整理如下,有不对或者补充的请提出来~

x(f()), 注意 :x(f())中f后面是有括号的,即 f作为函数传给x 。将f()函数传给x()函数,先执行f()函数打印出2,再执行x()函数,因为x()中的y()函数返回的是y即函数名所以没有执行y函数。所以最终打印结果为2。

第三种情况:


python中函数与函数之间的调用,总是晕菜,整理如下,有不对或者补充的请提出来~

x(f), 注意 :x函数中的y函数返回的值是y函数,即return y()。x(f)中f作为参数传给x函数,所以f()函数就不执行了,执行x函数,因为return y(),所以执行y函数打印出1。最终打印结果为1。

第四种情况:


python中函数与函数之间的调用,总是晕菜,整理如下,有不对或者补充的请提出来~

x(f()), 注意 :x(f())中f后面是有括号的,即f作为函数传给x;x函数中的y函数返回的值是y函数,即return y()。将f()函数传给x()函数,先执行f()函数打印出2,再执行x函数,因为return y(),所以执行y函数打印出1。最终执行打印结果为2 1。

第五种情况:


python中函数与函数之间的调用,总是晕菜,整理如下,有不对或者补充的请提出来~
x(f), 注意 :x(f)中f后面没有括号,即f作为参数传入x()函数。将f作为参数带入x函数执行,因为return y()所以执行y函数打印出1;再执行
python中函数与函数之间的调用,总是晕菜,整理如下,有不对或者补充的请提出来~
语句,此时相当于 func()=f() ,即开始执行f()函数打印出2。所以最终打印结果为1 2。

以上是按照我自己理解来总结的,不对或者有补充的地方欢迎指出来~~

或者参考大神们的总结,链接:http://www.cnblogs.com/feixuelove1009/p/5541632.html

声明:如需转载,请注明来源!


Viewing all articles
Browse latest Browse all 9596

Trending Articles