python函数代码_python函数

首先我们为什么要用函数式编程

我们使用函数总结了三点好处:

代码重复利用

可扩展性

保持一致性

学了函数式编程,我们以后要把逻辑和业务区分离出来,这样以来让程序变的容易扩展,当需求要添加或者改变我我们就变的容易改变。

有了这么多了好处那我们看看怎么写函数式编程:

定义函数用关键字 :  def

定义函数def deom(text):  deom 是函数名,text是形式参数,:冒号不能少

print(‘执行语句’)

执行函数def(a)                 a 是实参

现在举个代码重复利用的例子:

没有用函数。

whileTrue:if cpu利用率 > 90%:

#发送邮件提醒

连接邮箱服务器

发送邮件

关闭连接if 硬盘使用空间 > 90%:

#发送邮件提醒

连接邮箱服务器

发送邮件

关闭连接if 内存占用 > 80%:

#发送邮件提醒

连接邮箱服务器

发送邮件

关闭连接

用了函数以后。把写好的函数放到循环语句里面就行了,减少了代码量。

def 发送邮件(内容)

#发送邮件提醒

连接邮箱服务器

发送邮件

关闭连接whileTrue:if cpu利用率 > 90%:

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

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

def 函数名(参数):

...

函数体

...

返回值

函数的定义主要有如下要点:def:表示函数的关键字

函数名:函数的名称,想使用就根据函数名调用函数

函数体:函数中进行一系列的逻辑计算,如:发送邮件、计算出 [11,22,38,888,2]中的最大数等...

参数:为函数体提供数据

返回值:当函数执行完毕后,可以给调用者返回数据

1、返回值

函数是一个功能块,该功能到底执行成功与否,需要通过返回值来告知调用者。

因为我们想要想要这个函数的执行结果,这个执行结果会在后面的程序运行过程中需要用到。

以上要点中,比较重要有参数和返回值:

def 发送短信():

作用域:1、局部变量

局部变量:顾名思义,指在局部生效,定义在函数体内的变量只能在函数里面生效,出个这个函数体,就不能找到它,这个函数就是这个变量的作用域。2、全局变量

有了局部变量,那就肯定有全局变量,那什么是全局变量呐?全局变量又改怎么定义呢?

全局变量:指的是在整个程序中都生效的变量,在整个代码的顶层声明。

全局变量的优先级是低于局部变量的,当函数体内没有局部变量,才会去找全局变量。但是有的同学会问了,那我需要在函数体内修改全局变量咋办呢?

改前用global先声明一下全局变量

将全局变量重新赋值

也是可以的,但是我们最好不要用以上2种情况,也就是说最好不要用global这个关键字,因为你用了,其他人调你的函数时,就乱套了,而且还不好调试,

说不定还冒着被开除的危险,所以请大家忘记它吧,只是知道有这么一个东西就行了。

小结:1、只有字符串和整数是不可以被修改的,如果修改,需要在函数里面声明global。2、但是复杂的数据类型,像列表(list)、字典(dict)、集合(set),

包括我们后面即将要学的类(class)都是可以修改的。

在子程序(函数)中定义的变量称为局部变量,在程序一开始定义的变量称为全局变量。

全局变量的作用域是整个程序,局部变量的作用域是定义该变量的子程序(函数)。

当全局变量和局部变量同名时:在定义局部变量的子程序内,局部变量起作用;在其他地方,全局变量起作用。

结论:

参数分为位置参数、关键字参数、默认参数、非固定位置参数和非固定关键字参数

位置参数之前传参,位置是不能调换的,多一个或者少一个参数都是不可以的。

函数参数位置结论    def func(name,age=18,*args,**kwargs)

得出一个结论:关键字参数是不能写在位置参数前面的。

关键字传参,可以不用考虑位置的前后问题

return 返回值,返回的是什么内容,返回给谁,内容什么都可以,返回给调用者

return 返回可以返回任意对象,和任意多个,当返回多个值是python会把多个值封装在一个元组里面病返回。

return  语句后面的语句不在执行,所以代表着函数体的结束。

如果函数体没有函数默认是返回 None

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值