py09-函数基础
1、为何用函数之不使用函数的问题
1.组织结构不清晰
2.代码冗余
3.无法统一管理且维护难度大
2、函数分类:
1.内置函数
2.自定义函数
3、为何要定义函数
函数即变量,变量必须先定义后使用,未定义而直接引用函数,就相当于在引用一个不存在的变量名
4、函数的使用
1.先定义
2.再调用
5、定义函数都干了哪些事?
只检测语法,不执行代码
6、如何定义函数
def 函数名(arg1,arg2,agr3,....)
注释
函数体
returen 返回值
#函数名一般是动词
#需要添加注释信息
#参数:无参、有参、空函数
#return 返回值:函数内部可以有多个return,但只能执行一次,函数就结束调用,并且把return后的值作为函数执行的结果返回。
7、定义函数的三种形式
无参:应用场景仅仅只是执行一些操作,比如与用户交互、打印。
有参:需要根据外部传进来的参数,才能执行相应的逻辑,比如统计长度,求最大值最小值
空函数:设计代码结构
8、函数的调用
1、先找到函数名字
2.根据函数名字调用代码
9、函数示例
两个数字比较
def my_max(x,y):
if x > y:
print(x)
else:
print(y)
my_max(1,2)
参数赋值
def my_max(x,y):
if x > y:
return x
else:
return y
res=my_max(1,2)
print(res)
10、函数的返回值
1、return的返回值没有类型限制
2、函数里面没有return,返回None,等同于return None
3、return后面有一个值,返回的就是该值
4、return val1,val2,val3....... 返回的就是(val1,val2,val3......)
5、return只执行一次,并且把return的值返回给函数
简单理解为:
0——>None
1——>返回1个值
多个——>元组
实例:
默认没有return:
def func(): print('form func') res=func() print(res)
(没有return,默认返回值是None ,等价于return None)
等同于
def func(): print('form func') return None res=func() print(res)
返回一个值:
def func(): print('form func') return 123 res=func() print(res)
返回多个值:
def func(): print('form func') return 'a','b','c',[1,2,4],{'name':'egon','sex':'male'} res=func() print(res)
函数返回值什么时候该有:
1、调用函数,经过一系列的操作,最后要拿到一个明确的结果,则必须要有返回值
2、通常有参函数需要有返回值,输入参数,经过计算,得到一个最终的结果
函数返回值什么时候不需要有:
1、调用函数,仅仅只是执行一系列的操作,最后不需要得到什么结果,则无需有返回值
2、通常无参函数不需要有返回值
11、函数调用的三种形式
1、语句形式:my_max(1,2)
2、表达式形式:my_max(1,2)*10
3、当中另外一个函数的参数:my_max(my_max(1,2),3)
示例:
def my_max(x,y): if x > y: return x else: return y my_max(1,2) #语句形式 res=my_max(1,2)*10 #表达式形式 res1=my_max(my_max(1,2),3) #函数调用可以当做另外一个函数的参数 print(res) print(res1)
、