零基础学python 7 深入函数:指向函数,返回函数,空函数

avatar 2017年3月26日10:58:19 评论 2,419

加入VIP,可以享受无广告视频播放!更可享受教程提前看!详情猛戳:VIP介绍

大家好!

欢迎进入全新的第七课的学习~

我们这节课的内容是深入函数:指向函数,返回函数,空函数

上节课我们学习了教大家大神的套路,就是完成函数模块化的学习。在这里,我也要补充一句,那就是希望大家在一遇到重复操作的时候就尽可能的把重复操作的代码模块化,写成函数封装起来调用。这在任何编程语言中都是适用的,是一种编程的好习惯。为什么呢?因为把常用的命令封装起来,对于一些大项目的开发和封装以及继承都很有用处。我们在进行真实的编程项目,也就是公司那种的时候,有的时候代码量远没有我们现在初学学习的时候那么简单。你以为咱们写的五六行封装成函数就很复杂了?非也。在真实编程环境下,有大大小小各种各样的函数,小的函数几行,大的函数不仅包囊了小的函数,还自己写了一些复杂代码,即便是很多函数都封装起来了,减少了巨量的代码量,有的时候算起来总的代码量还是有上万上十万行的代码的。可以想象,那些可以写成函数的命令没有封装成函数的时候会冗余多少的代码。因此再强调一下,能封装成函数的就尽可能封装成函数吧!

那么函数本身除了上节课咱们讲到的基本使用之外,其实本身还有很多的小知识点需要我们去掌握,只有掌握了他们,咱们今后才能玩转函数,玩转各种各样的代码。

深入函数的专题会分成几个部分学习,咱们这节课先学习指向函数,返回函数,空函数这三个。今后遭遇更难的知识之后,咱们再深入学习其他的函数知识。循序渐进,方可进步。

好,那咱们开始吧!

1. 指向函数

调用函数的时候,我们可以把变量指向一个函数,可以用过这个变量调用和这个函数,比如:

>>>a = abs
>>>a(-1)
1

在这段代码里面,咱们把abs求绝对值的函数赋值给a这个变量,那么之后咱们就可以用a来替代abs,a也能起到求绝对值的作用咯。

2. 返回函数

在其他语言里面,上次我们讲到的没有返回值(return)的函数跟真实的函数是区分开的,没有返回值的函数,也就是只执行一系列代码命令的函数咱们也可以叫做“子程序”,而真正的函数通常都是有返回值的,我们在进行真实编程代码封装的时候,多数还是写的带有返回值的函数。

那么什么是返回函数呢?

(1)函数可以加返回值语句,return 返回值,如果没有写这一句,表示没有返回值,查看返回值会显示None。

这一点我们可以在python tutor网站进行印证:

如图可以看到,在函数运行结束的时候,Return value的部分显示的是None,也就是返回值为None。

(2)return None也可以写成return。

如果我们打算写这句代码的话,return None可以省略成return就可以了,如果不打算返回None,可以把None替换成别的你要返回的内容。比如:


如图这里我们就把print函数替换成了return,因为要返回x,所以后面写x。返回值我们通过等于号赋值的方式保存进一个变量里面,这里我们叫做x,当然也可以叫别的名字。最后可以使用print函数进行输出。

(3)有return的位置可以随时返回结果。

这句话如何理解呢?在这里先给大家留一个悬念,大家可以自己思考一下,等我们讲到后面选择结构的时候再对此进行详细讲解。

3. 空函数

如果这个函数什么也不做,用pass来代替:

def myfunction():
    pass

为什么要写pass呢?pass的意思表示通过,换句话说,就是劳资什么也不做。有的同学会说,既然你什么都不做,那我要你有何用?

嗯,它的作用是一个占位的作用。

比如现在这个函数代码还没想好怎么写,可以先放pass,让代码正常运行。

在某些语句里面,如果没有pass这段代码就会有错误。这一点我们在学习选择结构的时候再详谈。

 

好啦,以上就是本节课的所有内容,想学习得更加仔细吗?别忘了看我们配套的视频教程哦!

在线观看:

 

高清源文件下载:

链接:http://pan.baidu.com/s/1dFiRWu1 密码:rhh2

 

感谢大家的收看,我们下节课再见!(本课课后有作业哦~)

avatar

发表评论

您必须才能发表评论!