1. 函数的返回值
- 返回值就是函数执行以后返回的结果
- 通过 return 来指定函数的返回值
- return 后面可以跟任意对象,甚至可以是一个函数
2.文档字符串
-
help()是Python的内置函数,通过help()可以查询Python中函数的用法
-
在定义函数时,可以在函数内部编写文档字符串,文档字符串就是对函数的说明
3. 函数的作用域(scope)
- 作用域指的是变量生效的区域
- Python一共有两种作用域
-
全局作用域
- 全局作用域在程序执行时创建,程序结束时销毁
- 所有函数以外的区域都是全局作用域
- 在全局作用域中定义的变量,都是全局变量,全局变量可以在程序的任意位置进行访问
-
函数作用域
- 函数作用域在函数调用时创建,函数调用结束时销毁
- 函数每调用一次就会产生一个新的函数作用域
- 在函数作用域中调用的变量都是局部变量,只在 函数内部被访问
-
4.命名空间
-
命名空间实际上就是一个字典,是一个专门用来储存变量的字典
-
locals()用来获取当前函数的命名空间
-
如果在全局作用域中调用locals()则获取全局命名空间,如果在函数作用域中调用locals()则获取函数命名空间
-
返回值是一个字典
5.递归函数
-
递归是解决问题的一种方式,整体思想是将一个个的大问题分解为一个个的小问题,直到问题无法分解时,才去解决问题
-
递归函数的两个条件:
-
基线条件:将问题分解为最小的问题,满足基线时,递归不再执行
-
递归条件:将问题可以继续分解的条件
-
例如:求任意数的任意次幂