1.简介
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。
当然系统中还有很多功能强大的内置函数,下面我们会举例介绍。
2.函数的定义
def 函数名(参数):
函数功能
#函数调用
函数名(参数)
例1:
例2:(函数嵌套)
3.给函数加餐 ? (参数)
<1>函数的参数类型
-
形参、实参
形参:如下图的a、b
只有在被调用时才分配内存单元,在调用结束时,即可释放所分配的内存单元。因此,形参只在函数内部有效。函数调用 结 束返回主调函数后则不能再使用该形参变量。形参不占内存,用完释放。实参:如下图的2、6
可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,他们都必须有确定的值,以便把这些值传送给形参,因此应预先用赋值、输入等办法使参数获得确定值。
例:
<2>形参分类
- 位置参数:形参和实参个数必须保持一致,且按位置顺序将实参传递给形参
-
默认参数:形参和实参可以不一致
def mypow(x,y=2): print(x ** y) mypow(4)------->4传递给形参x;y=2为默认参数。函数调用结果为4的2次等于16 mypow(2,3)----->2,3分别传递给x,y,y将不使用默认参数2
-
可变参数:可以传入一个或多个参数
例:
-
关键字参数
例:
4.变量
在函数中变量分为局部变量和全局变量
二者的区别在于:
- 局部变量:在函数内部定义的变量,只在函数内部起作用,函数执行结束,变量自动删除
- 全局变量:简单来讲是定义在函数外部的变量
用三张图简单体会一下
5.函数的返回值
返回值:函数运算的结果,还需要进一步操作时,给一个返回值return用来返回函数执行结果,如果没有返回值,默认为None;python可以间接返回多个值 (返回一个元组) ;一旦遇到return,函数执行结束,后面的代码不会执行。
例:
若函数运行结果没有返回-------->输出为None
正确写法:返回一个元组
6.函数练习题
题1:
编写一个函数cacluate, 可以接收任意多个参数,返回的是一个元组.
元组的第一个值为所有参数的平均值, 第二个值是大于平均值的所
有值
题2:
编写一个函数, 接收字符串参数, 返回一个元组,‘ehllo WROLD’
元组的第一个值为大写字母的个数, 第二个值为小写字母个数.
题3:
编写函数, 接收一个列表(包含30个1~100之间的随机整形数)和一>个整形数k, 返回一个新列表.
函数需求:
- 将列表下标k之前对应(不包含k)的元素逆序;
- 将下标k及之后的元素逆序;
[1,2,3,4,5] 2 [2,1,5,4,3]
[1,2,3,4,5,6,7,8,9] 4 [4,3,2,1,9,8,7,6,5]