9. Python之函数( 二 )

1. 函数的返回值

  • 返回值就是函数执行返回之后的结果
  • 通过return 来指定函数的返回值
  • return后面可以跟任意的函数对象,也可以是一个函数
  • 在函数中return后的代码都不会执行,return一旦执行函数自动结束
  • fn 是函数对象 打印fn实际上就是在打印函数对象
  • fn() 是在调用函数 打印fn()实际上就是在打印fn()的返回值

2. 文档字符串

  • help() 函数是python内置函数,通过help() 函数查询函数功能
  • 定义函数时候,可以在函数内部编写函数字符串,对函数进行说明

3. 函数作用域

  • 函数作用域 > scope
  • 是指函数的变量生效区域
  • python中有2个作用域
    • 全局作用域
      • 在程序执行时创建,程序执行结束销毁
      • 在函数以外的区域都是全局作用域
      • 全局作用域中定义的变量都是全局变量,全局变量可以在程序的任意位置访问
    • 函数作用域
      • 在函数调用时创建,函数调用结束时销毁
      • 函数每调用一次就产生一个新的函数作用域
      • 函数作用域的变量都是局部变量,函数以外不可调用,只能内部调用
  • 如果希望在函数内部修改全局变量,则需要使用一个global关键字,来声明变量
  • 声明在函数内部的使用a是全局变量,此时我们修改a,就是在修改全局变量

4. 命名空间

  • 实际上是一个字典,专门用来存储变量的字典
  • locals() 获取当前作用域的命名空间
  • 如果在全局作用域中调用locals() 函数 ,则获取全局变量名空间
  • 如果在函数作用域中调用locals() 函数 ,则获取函数变量名空间
  • 返回值是一个字典 dict ( key : value )

5. 递归函数

  • 递归简单理解就是自己去引用自己
  • 递归函数就是在函数中调用自己
  • 递归是解决问题的一种方法,它的整体思想是将大问题分解成一个一个的小问题,知道问题无法分解时去解决问题
  • 递归函数有2个条件
  • 基线条件: 问题可以被分解为最小问题,当满足基线条件时递归不执行
  • 递归条件: 可以将问题继续分解的条件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值