函数

前面我们学了Python中最最基础的知识,

变量、表达式、运算符、注释、流程控制、数据类型,if、while、 for:

通过这些知识我们已经可以完成很多编写代码的工作了。

但是这些还不够,还有更好的编程方式等着我们去学习。

今天我们就来学习一种更好的编程方式——函数。学会了函数,你就向高级程序员走进了一大步。

现在我们先看一个例子:

在我们的日常工作中,少不了跟服务器打交道。为了保证服务器的正常运行,我们需要对服务器进行监控。

 

现在我们运用我们已经学到的知识来一个监控服务器CPU/内存/硬盘等硬件指标的程序,当这些硬件的使用率超过阀值的时候就给我们发邮件。

代码很简单、很快就写出了下面的代码:

while True:
    if cpu利用率 > 90%:
        #发送邮件提醒
        连接邮箱服务器
        发送邮件
        关闭连接

    if 硬盘使用空间 > 90%:
        #发送邮件提醒
        连接邮箱服务器
        发送邮件
        关闭连接

    if 内存占用 > 80%:
        #发送邮件提醒
        连接邮箱服务器
        发送邮件
        关闭连接

我们看一下这段代码有什么问题。我们会发现发送邮件的代码被重复写了三次,每监控一个硬件,就需要把发送邮件的代码重复写一遍,这里我们监控了三个硬件,发送邮件的代码写了三遍;如果监控更多的硬件,我们就需要重复写更多次 发送邮件的 代码。

重复的事情,大家都不愿意做。那如何解决代码重复的问题呢?

大家看,如果我们将重复的发送邮件的代码提取出来,放在一个公共的地方,起个名字——发邮件,每次需要执行发送邮件的代码的时候,我们就执行发邮件这个名字,这样不就解决了代码重复的问题么。

def 发送邮件(内容)
    #发送邮件提醒
    连接邮箱服务器
    发送邮件
    关闭连接

while True:

    if cpu利用率 > 90%:
        发送邮件('CPU报警')

    if 硬盘使用空间 > 90%:
        发送邮件('硬盘报警')

    if 内存占用 > 80%:
        发送邮件('内存报警')

 

我们对比一下两次的代码,第二次的代码将重复的内容提取出来,起了个名字,后面要使用这段代码 只要使用这段代码的名字就可以了。

原来需要三步的代码,现在只需要一步就可以了。

我们还会发现,使用这种方式,如果我们要修改发送邮件的代码,只需要修改一处就可以了,而原来的方式需要修改多处才可以。这样让我们的代码更容易管理。

第二种方式的代码 帮我们解决了重复代码的问题,让代码变的简洁,简化了我们操作,也更易于管理。

 

那第二次这种组织代码的方式是什么呢?其实它就是我们马上要学的函数。

 

函数是一段代码的代码的组合,函数被定义以后,我们可以通过函数的名字,也就是函数名来执行函数中的代码。


那函数如何定义呢?这里我们先定义一个最简单的函数给大家看看

def hello():
    print("Hello world.")

在第一行,我们使用 def 来定义了一个函数,接着是函数的名字,也就是函数名,之后紧跟一对圆括号,然后是一个冒号。冒号用来告诉python 接下来是一段代码。

执行函数很简单:

hello()

函数名后加一对圆括号,就可以执行函数。

执行函数也叫调用函数,调用函数的时候,函数名后面的圆括号必须存在。

 

函数可以简化我们的代码。在很多地方都会用到函数,

我们看到的网站上每个页面都会有等面的按钮,我们点击登陆的时候其实就是调用了一个登陆函数

我们的程序要记录日志,每次都要打开文件,写入内容,关闭文件,这里我们也可写一个函数。 

 

前面我们学会了如何写函数,如果以后要修改发邮件的代码,比如说要增加邮件群发的功能,那我们该如何实现呢?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

===============================================================================================

===============================================================================================

今天我们来学习函数,我们先说一个故事
小明一个程序员,小明的领导让他写一个监控服务器CPU/内存/硬盘等硬件指标的程序,
当这些指标超过阀值的时候就给小明发邮件。
小明想破了头,写出了下面的代码:

while True:
if cpu利用率 > 90%:
#发送邮件提醒
连接邮箱服务器
发送邮件
关闭连接

if 硬盘使用空间 > 90%:
#发送邮件提醒
连接邮箱服务器
发送邮件
关闭连接

if 内存占用 > 80%:
#发送邮件提醒
连接邮箱服务器
发送邮件
关闭连接

上面的代码实现了领导的要求,小明觉得自己第一次写,担心有问题,先找了教自己的帅老师给看看,帅老师看了之后说,你这样写不行啊,
你看你写的发邮件的代码重复了,每监控一个硬件,就要重复一写一边发邮件的代码,这样不好。
1. 重复代码太多,代码不够简洁、易读,太low
2. 如果以后要修改发邮件的代码,比如说要增加邮件群发的功能,每一处邮件的代码你都需要修改
小明迷惑的看着帅老师,依旧想不出如何避免这两个问题,这时,帅老师笑吟吟的对小明说,小明你看,如果我们把重复的代码提取到一个公共的地方,起个名字,以后谁想用这段代码,就通过这个名字使用这段代码,这样不就解决了上面两个问题了么。
来我们把代码改一下:

def 发送邮件(内容)
#发送邮件提醒
连接邮箱服务器
发送邮件
关闭连接

while True:

if cpu利用率 > 90%:
发送邮件('CPU报警')

if 硬盘使用空间 > 90%:
发送邮件('硬盘报警')

if 内存占用 > 80%:
发送邮件('内存报警')

我们对比一下两次的代码,第二次的代码将重复的内容提取出来,起了个名字,后面要使用这段代码 只要使用这段代码的名字就可以了。
这里用到的其实是我们马上要学的函数。
使用函数我们解决了上面两个问题
1. 解决了重复代码的问题,让代码变的简洁
2. 修改代码的时候,只需要修改一处就可以了,一处修改,多处使用,代码也更容易维护

函数是一段代码的代码的组合,函数被定义以后,我们可以通过函数的名字,也就是函数名来执行函数中的代码。


那函数如何定义呢?这里我们先定义一个最简单的函数给大家看看
def hello():
    print("Hello world.")


在第一行,我们使用 def 来定义了一个函数,接着是函数的名字,也就是函数名,之后紧跟一对圆括号,然后是一个冒号。冒号用来告诉python 接下来是一段代码。就像 if 语句 ,while循环 和 for循环一样 。

执行函数很简单:
hello()
函数名后加一对圆括号,就可以执行函数。
执行函数也叫调用函数,调用函数的时候,函数名后面的圆括号必须存在。

函数可以简化我们的代码。在很多地方都会用到函数,

我们看到的网站上每个页面都会有等面的按钮,我们点击登陆的时候其实就是调用了一个登陆函数

我们的程序要记录日志,每次都要打开文件,写入内容,关闭文件,这里我们也可写一个函数。

 

其实我们在学习函数之前就已经接触过函数了,

我们用到的print() ,range()都是函数。

有同学可能会问了,这个咱们刚说的函数不一样啊,调用 print() ,range() 的时候 ,圆括号里要写一些内容啊。

这就要说我们函数的另外一个重要的知识——参数。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

==============================================================================

第三次
==============================================================================

今天我们来学习函数,我们从一个故事说起。
现在想象一下你是一个程序员,你的领导让你写一个监控服务器CPU/内存/硬盘等硬件指标的程序,
当这些指标超过阀值的时候就给你发邮件。
你想破了头,写出了下面的代码:

while True:
if cpu利用率 > 90%:
#发送邮件提醒
连接邮箱服务器
发送邮件
关闭连接

if 硬盘使用空间 > 90%:
#发送邮件提醒
连接邮箱服务器
发送邮件
关闭连接

if 内存占用 > 80%:
#发送邮件提醒
连接邮箱服务器
发送邮件
关闭连接

上面的代码实现了领导的要求,你拿去给你的领导看,领导看后很不满意,但是没有生气,循循善诱的对你说
宝贝,你写的发邮件的代码重复了,每监控一个硬件,就要重复一写一边发邮件的代码,这样不好。
1. 重复代码太多,代码不够简洁、易读,太low
2. 如果以后要修改发邮件的代码,比如说要增加邮件群发的功能,每一处邮件的代码你都需要修改
你迷惑的看着你的领导,依旧想不出如何避免这两个问题,这时,领导笑吟吟的对你说,宝贝你看,如果我们把重复的代码提取到一个公共的地方,起个名字,以后谁想用这段代码,就通过这个名字使用这段代码,这样不就解决了重复的问题了么。
来我们把代码改一下:

def 发送邮件(内容)
#发送邮件提醒
连接邮箱服务器
发送邮件
关闭连接

while True:

if cpu利用率 > 90%:
发送邮件('CPU报警')

if 硬盘使用空间 > 90%:
发送邮件('硬盘报警')

if 内存占用 > 80%:
发送邮件('内存报警')

你崇拜的看着你的领导,领导对你说,想不想知道是怎么回事?晚上不要回家了,我带你去七天教你。

这里用到的知识,其实我们今天要讲是函数,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

==============================================================================
==============================================================================
==============================================================================

 

 

 

 

python14期视频下载及观看

老男孩教育-新9月26日 18:46

链接:http://pan.baidu.com/s/1gf2TyiZ 密码:dd7j
解压码:98Wu(*zu*&ha飞雪解码qq:80042789 电话:13552612571
1、使用专用播放器播放:PBB Reader(群文件有)
2、小窗发送你的姓名和身份证号至飞雪授权激活。
3、点击申请激活-填上你的姓名和身份证号,即可观看
注:只可选定一台设备激活观看,暂不支持Mac系统(Mac可使用虚拟机观看)加密的文件会绑定您的设备,再次更换设备需重新绑定,等待时间为两到三天。 
前三次绑定免费,超过五次不再提供绑定。
【如升级系统,更换硬件、CPU、内存、主板、管理权限、固态硬盘等等都会导致机器码变更,请不要随意改动】

 

Python15期

北京-飞雪9月26日 19:56

链接:http://pan.baidu.com/s/1qXIDpz2 密码:qjj3
解压码:……%A90w818wu

 

 

 

 

 

 

 

=======================================================

第二版_修改版

=======================================================

 

现在我们来学习函数。

函数是一段可以重复使用的代码。它其实就是给一段代码起一个名字,然后通过这个名字多次执行执行这段代码。

我们通过一个例子来学习函数,首先问大家一个问题:把大象关进冰箱分几步?三步。

第一步:打开冰箱
第二步:把大象放进去
第三步:关上冰箱

写成代码:
print("打开冰箱")
print("把大象放进去")
print("关上冰箱")

 

如果我们每天都要做这件事情,还要把这件事情记录下来。我们会发现每次记录的内容都是重复的。

第一天记录的内容
print("打开冰箱")
print("把大象放进去")
print("关上冰箱")

第二天记录的内容
print("打开冰箱")
print("把大象放进去")
print("关上冰箱")

第三天记录的内容
print("打开冰箱")
print("把大象放进去")
print("关上冰箱")

..........

那我们给这组代码起一个名字——关大象。我们一说关大象这个名字就代表我们要做这三步。

关大象:
    print("打开冰箱")
    print("把大象放进去")
    print("关上冰箱")

第一天记录的内容
关大象

第二天记录的内容
关大象

第三天记录的内容
关大象

..........

这里我们写明了 关大象 这个名字对应的三个操作,每次记录的时候只要写关大象这个名字就可以了。

大家想,这里我们重复使用 关大象 这个名字就是重复使用关大象需要做的三步操作,我们又知道函数是可以重复使用的一段代码,

那用函数来写一下这个过程就是:

def put():
    print("打开冰箱")
    print("把大象放进去")
    print("关上冰箱")


第一天记录的内容
put()

第二天记录的内容
put()

第三天记录的内容
put()

..........

 这里我们定义了一个 put() 函数,然后执行了这个函数。每执行一次 put() 函数,就表示我们做了 关大象 需要做的三步操作。

 

经过两次代码的对比,我们可以总结一下 如何定义函数。

在第一行,我们使用 def 来定义了一个函数,接着是函数的名字,也就是函数名,之后紧跟一对圆括号,然后是一个冒号。冒号用来告诉python 接下来是一段代码。就像 if 语句 ,while循环 和 for循环一样 。

def 函数名():
    代码段

 

使用函数也叫做调用函数。调用函数只需要在函数名后面加一对圆括号就可以了。

 

调用函数的过程:

第一步:程序读到要调用 put() 函数

第二步:跳到 put() 函数中的第一行代码

第三步:执行 put() 函数中的代码

第四步:  put() 函数执行完毕,回到程序离开的位置,继续执行程序

 

 

通过上面的内容,我们可以看到,使用函数会有一些好处:

1. 不用写大量重复的代码,提高了效率

2. 方便代码的管理,一处修改,多处使用

3. 使代码更简洁、易读

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

===================================================================================================================

下面内容 废弃:

===================================================================================================================

今天我们学习函数函数。

讲课之前先问大家一个问题。

把大象关进冰箱分几步?三步。

第一步:打开冰箱

第二步:把大象放进去

第三部:关上冰箱

写成代码就是:

print("打开冰箱")
print("吧大象放进冰箱")
print("关上冰箱")

如果我们每天都要做这件事情并把把这件事情记录下来,我们会发现每次记录的内容是重复的。

现在我们给这组代码起一个名字——关大象。我们一说关大象这个名字就代表我们要做这三步,这样我们在记录的时候只需要写 “ 关大象 ” 就可以了。

写成代码就是:

def putElephant():
    print("打开冰箱") 
    print("吧大象放进冰箱")
    print("关上冰箱")

使用这段代码的方式是:

putElephant()
# 执行结果:
打开冰箱
把大象放进冰箱
关上冰箱

其实,我们在这里定义了一个函数,并执行了这个函数。

 

根据上面的代码,我们可以总结出,函数的定义方式和使用方式:

def 函数名():
    语句组

# 执行函数
函数名()

Python中使用 def 来定义函数,后面在写函数名, def和函数名之间用空格隔开,

函数名之后是一对圆括号,圆括号后紧跟一个冒号;这一行下面就是我们要执行的语句.

执行函数时,只要函数名后跟一对圆括号就可以了。执行函数我们通常 叫做调用函数。

 

通过上面的内容,我们可以看到,函数本质上是一组代码的集合,他让我们避免了写大量重复的代码。

由此带给我们一些现在可以看到的好处:

1. 不用写大量重复的代码,提高了效率

2. 方便代码的管理,一处修改,多处使用

3. 使代码更简洁、易读

 

posted on 2016-11-04 14:34  R_e  阅读(223)  评论(0)    收藏  举报

导航