1. 函数的返回值

返回值就是返回函数执行的结果,通过return来指定函数的返回值

举例

运行结果为6,没有指定返回值

python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归

下图返回值指定

可以直接使用函数的返回值,另一个方式是通过一个变量来接收函数的返回值。

return后面可以跟任意的对象,甚至是一个函数,函数的话,return不加括号。

运行结果是: 123

python 里面函数返回个字符串怎么填写 python 返回字符串位置_python_02


python 里面函数返回个字符串怎么填写 python 返回字符串位置_作用域_03


在函数中,return后的代码都不会执行, return一旦执行,函数结束

python 里面函数返回个字符串怎么填写 python 返回字符串位置_作用域_04

下列运行结果 是 : abc none

python 里面函数返回个字符串怎么填写 python 返回字符串位置_python_05

下图 break 退出了当前循环,运行结果是: 012 循环完毕

python 里面函数返回个字符串怎么填写 python 返回字符串位置_作用域_06


用上了return ,下方函数直接结束, 运行结果 : 012

python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_07

三种区别 注意 continue的运行如下

运行结果是 :0124 执行完毕

python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_08


用了return后, 函数为所欲为,看下面代码

python 里面函数返回个字符串怎么填写 python 返回字符串位置_python_09

总结函数 括号打印区别

python 里面函数返回个字符串怎么填写 python 返回字符串位置_作用域_10

2. 文档字符串

函数 help() 是python的内置函数,即不想百度装逼的。
@可以查询python中函数的用法。

在定义函数的时候,可以在函数内部编写文档字符串,文档字符串就是函数的说明,
当我们编写了文档字符串时,就可以通过help()函数来产看函数的说明

语法:help(函数对象) #注意别加括号

file ,和 flush 是关键字传参

python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_11


python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_12

预见性结束偶

python 里面函数返回个字符串怎么填写 python 返回字符串位置_python_13

3.函数的作用域(scope)

就是指 变量生效的区域
@@ 在python中函数有两种作用域:
内(函数作用域) :函数调用时创建,调用后销毁;每次调用后…

外(全局):所有函数以外的都属于全局,在程序任意位置可以被访问。

外部看不到了吧!!

python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_14


外部可见的区别哦

python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_15

总结 两种 作用域

python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_16


fn2下面 fn3

都能用

python 里面函数返回个字符串怎么填写 python 返回字符串位置_python_17


内部函数功能可以调用全局,但是全局不能看里层的函数作用域

python 里面函数返回个字符串怎么填写 python 返回字符串位置_字符串_18

**在函数内部修改全局变量,需要使用global关键字,来声明局部变量
**

运行结果内部外部都是 123

python 里面函数返回个字符串怎么填写 python 返回字符串位置_字符串_19

4.命名空间

命名空间就是一个字典,是 一个专门用来保存变量的字典。

locals() 用来获取当前作用域的命名空间,返回一个字典。

python 里面函数返回个字符串怎么填写 python 返回字符串位置_作用域_20

用关键字也可以哦

python 里面函数返回个字符串怎么填写 python 返回字符串位置_作用域_21

骚操作 ,有强制报错都能运行,但是不建议这样做;

python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_22


运行结果如下

python 里面函数返回个字符串怎么填写 python 返回字符串位置_字符串_23

函数内部没有定义所以只是{}空字典

python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_24


python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_25

**globals()**可以获取全局的命名空间,哪怕在函数中 也有效

#获取了外部的a=123 b=456

python 里面函数返回个字符串怎么填写 python 返回字符串位置_字符串_26

5.递归函数

递归式的函数 简单理解就是自己引用自己
在函数中自己调用自己。
@@ 是解决问题的一种思想,和循环很像,整体上是将大问题分解为小问题,直到问题无法分解时,再去解决问题。

递归的两个条件:

  1. 基线条件:问题可以被分解为最小的问题,当满足基线条件时,递归就不再执行了。
  2. 递归条件: 将问题继续分解的条件。

python 里面函数返回个字符串怎么填写 python 返回字符串位置_python_27

#面试 经常考

举例@ 尝试求10的阶乘(10!)

1!=1

2!=1*2

。。。。

10!=…910

python 里面函数返回个字符串怎么填写 python 返回字符串位置_作用域_28

用循环才正规

python 里面函数返回个字符串怎么填写 python 返回字符串位置_python_29

#定义一个函数来实现任意数的阶乘

python 里面函数返回个字符串怎么填写 python 返回字符串位置_作用域_30


## 用递归的思想解决任意数阶乘问题#10!=109!
#9!=9
8!

。。。

#1!=1

python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_31


python 里面函数返回个字符串怎么填写 python 返回字符串位置_作用域_32

递归练习

  1. 定义一个函数,为任意数字做任意的幂运算

python 里面函数返回个字符串怎么填写 python 返回字符串位置_作用域_33


python 里面函数返回个字符串怎么填写 python 返回字符串位置_python_34

  1. 定义一个函数,用来检查任意一个字符串是否时回文字符串,如是返回True,不是返回False
    .回文 字符串,时从前往后念与从后往前念是一样的,例如 abcba

思路:

python 里面函数返回个字符串怎么填写 python 返回字符串位置_python_35

python 里面函数返回个字符串怎么填写 python 返回字符串位置_字符串_36

python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_37

总结

python 里面函数返回个字符串怎么填写 python 返回字符串位置_作用域_38


python 里面函数返回个字符串怎么填写 python 返回字符串位置_递归_39