函数是盛放代码的容器:把实现某一功能的代码放到一个函数内就制造一个工具
解决程序代码冗余,可读性差,可拓展性差的问题*
函数额使用原则:'先定义,后调用'
1、定义函数(定义函数阶段只检测语法,不执行函数体代码) # 语法 # def 函数名(参数1,参数2,参数3,...参数可有可无): # """函数注释""" # 代码1 # 代码2 # 代码3 # return 返回值 (可有可无) # 定义函数发生的事情: # (1)申请内存空间,把函数体代码存起来 # (2)将函数的内存地址绑定函数名 2、调用函数(函数体加括号即为调用函数调用,只有调用函数才会执行函数体代码) # 按照在程序出现的形式和位置,可将函数的调用形式分为三种: # 1、语句形式: foo() # 2、表达式形式: x = foo(1,2) # 将调用函数的返回值赋值给x y = 10*foo(1,2) # 将调用函数的返回值乘以10的结果赋值给y # 3、函数调用作为参数的形式: # foo(2,3)作为函数my_min的第二个参数,实现了取1,2,3中的较小者赋值给m def foo(x, y): if x < y: return x else: return y m = foo(1,foo(2,3)) print(m) >>> 1
若需要将函数体代码执行的结果返回给调用者,则需要用到return。return后无值或直接省
略return,则默认返回None,return的返回值无类型限制,且可以将多个返回值放到一个元
组内
>>> def test(x,y,z): return x,y,z #等同于return (x,y,z) >>> res=test(1,2,3) >>> print(res) (1, 2, 3)return是一个函数结束的标志,函数内可以有多个return,但只执行一次函数就结束了,并把return后定义的值作为本次调用的结果返回
来源:https://zhuanlan.zhihu.com/p/108808009
//仅供学习交流//