一.函数对象

  函数是第一类对象:指的是函数名指向的值可以被当作数据去使用.

  1.函数可以被引用

  例如:

  

  2.可以当作参数传递给另一个函数

  例如:

  

  3.可以当作一个函数的返回值

  例如:

  

  4.可以当作容器类型的元素

  例如:

  

二.函数嵌套

  函数嵌套分为两大类

  1.函数的调用嵌套:在调用一个函数过程中,其内部代码又调用了其他函数

  例如:

  

  2.函数的嵌套定义:在一个函数内部又定义其他函数

  

三.名称空间与作用域

名称空间:

  名称空间是用来存放名字与值内存地址绑定关系的内部地址,但凡查找值一定要通过名字,访问名字必须去查找名称空间

  名称空间分为三大类:

    内置名称空间:存放的是python解释器自带的名字,如:len,max,print...

    全局名称空间:存放的是文件级别的名字(没有缩进级别的所有名字)

    局部名称空间:在函数内定义的名字

  名称空间的生命周期:

    内置名称空间:在解释器启动时则生效,解释器关闭则失效
    全局名称空间:在解释器解释执行python时则生效,文件执行完毕后则失效
    局部名称空间:只在调用函数时临时产生该函数的局部名称空间,该函数调用完毕则失效

  名称空间的加载顺序:

    内置名称空间---->全局名称空间---->局部名称空间

  查找名称空间的顺序:

    基于当前所处位置往上查找

    假设当前在局部名称空间,查找顺序:局部名称空间---->全局名称空间---->内置名称空间

作用域
  域:指的是范围作用域指的是作用的范围,分为两种
  全局作用域:包含的是内置名称空间与全局名称空间中的名字
  特点:全局有效,全局存活

  局部作用域:局部局部名称空间中的名字
  特点:局部有效,临时存活

最新文章

  1. .Net 序列化(去除默认命名空间,添加编码)
  2. js压缩xml字符串,将xml字符串转换为xml对象,将xml对象转换为json对象
  3. HackerRank "Components in a graph"
  4. Spark菜鸟学习营Day3 RDD编程进阶
  5. 修改首页的main里面的内容
  6. iso定制封装
  7. 【转】为ListView每个Item上面的按钮添加事件
  8. Bootstrap_Javascript_提示框
  9. 無心插柳的Linux學習者代言人——蔡德明
  10. Swift 2.0 单例的用法
  11. 自制STP配置实验
  12. Spring Data JPA 入门Demo
  13. SceneKit做一个旋转的地球效果
  14. anki server 错误与解决
  15. 20175126《Java程序设计》第八周学习总结
  16. 014 Security的认证流程源码级详解
  17. AS2在FLASH中调用EXE文件方法详细说明 已测试可行
  18. leetcode刷题笔记258 各位相加
  19. Kafka 0.8翻译官网精华.md
  20. Find The Multiple--POJ1426

热门文章

  1. python web框架之Tornado的简单使用
  2. github 的使用步骤
  3. Orcale常用函数
  4. Codeforces Round #533 (Div. 2) 部分题解A~D
  5. 使用instsrv.exe和srvany.exe将应用程序安装成windows后台服务
  6. kindeditor使用记录
  7. Java 实现栈,队列
  8. freemarker macro 使用
  9. 读经典——《CLR via C#》(Jeffrey Richter著) 笔记_友元程序集
  10. day17 isinstance type issubclass 反射