一,函数概述
所谓函数,就是把具有独立功能的代码块组织成为一个小模块,在需要的时候调用
函数的使用包含两个步骤
1.定义函数--封装独立的功能
2.调用函数--享受封装的成果
函数的作用:在开发时,使用函数可以提高编写的效率以及代码的重用
函数:
函数是带名字的代码块,用于完成具体的工作
需要在程序中多次执行同一项任务时,你无需反复编写完成该任务的代码,而只需调用该任务的函数,让python运行其中的代码,你将发现,通过使用函数,程序编写,阅读,测试和修复都将更容易
1,定义函数
def 函数名():
函数封装的代码
1.def是英文define的缩写
2.函数名称应该能够表达函数封装代码的功能,方便后续的调用
3.函数名称的命名应该符合标识符的命名规则
可由字母,下划线和数字组成,不能以数字开头,不能与关键字重名
2,参数的作用
函数把具有独立功能的代码块组织成为一个小模块,在需要的时候调用函数的参数,增加函数的通用性,针对相同的数据处理逻辑,能够适应更多的数据
1.在函数内部,把参数当作变量使用,进行需要的数据处理
2.函数调用时,按照函数定义的参数顺序,把希望在函数内部处理的数据,通过参数传递
形参和实参
形参:定义函数时,小括号中的参数,是用来接收参数用的,在函数内部作为变量使用
实参:调用函数时,小括号中的参数,是用来把数据传递到函数内部用的
3,函数的返回值
在 程序开发中,有时候,会希望一个函数执行结束后(举例子:温度计函数,要返回给我们当前的温度),告诉调用者一个结果,以便调用者针对具体的结果作出后续 的处理,返回值是函数完成工作后,最后给调用者的一个结果,在函数中使用return关键字可以返回结果,调用函数一方,可以使用变量来接收函数的返回结 果
4,局部变量和全局变量
局部变量是在函数内部定义的变量,只能在函数内部使用
全局变量是在函数外部定义的变量,(没有定义在某一个函数内),所有函数内部都可以使用这个变量
局部变量
局部变量是在函数内部定义的变量,只能在函数内部使用
函数执行结束后,函数内部的局部变量,会被系统回收
注意:不同的函数,可以定义相同的名字的局部变量,但是各用各的不会产生影响
局部变量的作用:在函数内部使用,临时保存函数内部需要使用的数据
二,基本函数示例
1,使用函数输出
实现两个数字的求和
形参传递参数
return返回值
返回值是在函数完成工作之后,最后给调用者的一个结果,在函数中使用return关键字可以返回结果,调用函数的一方,可以使用变量来接受函数的返回结果
分割线
局部变量与全局变量
这里定义的就是局部变量
pass的使用
、
pass起到一个占位的作用不会使程序报错
变量的生命周期
global关键字声明局部变量
五,引用
1,变量的引用
变量和数据都是保存在内存中的
在python中函数的参数传递以及返回值都是靠引用传递的
2,引用的概念
在python中变量和数据是分开存储的
数据保存在内存中的一个位置
变量中保存的是数据在内存中的地址
变量中记录数据的地址,就叫做引用
使用id()函数可以查看变量中保存数据所在内存的地址
传参
装饰器
概念:把一个函数当作参数,传递给函数,返回以一个加强版的函数本质上是一个返回函数的函数
"在不改变原函数的基础上,给函数增加功能"
1,装饰器基本用法
def say(age):
print 'he is %d years old ' % age
def outer(func):
def inner(age):
if age < 0:
age = 0
func(age)
return
say = outer(say)
say(-100)