Python:函数名称空间与作用域

函数对象:(第一类对象)

定义:函数是第一类对象:函数名可以当做数据来使用

1.可以直接被引用,加()就能运行deffoo():print("from foo")

f=foo

f()2.可以当作参数传入另一个函数defwarpper(x):

x()

warpper(foo)3.可以当作另外函数的返回值defwarpper2():returnfoo

f=warpper2()print(f isfoo)4.可以当作容器类型的一个元素

l=[foo,1,2]

l[0]()

名称空间:

定义:存放名字与值绑定关系的地方(实际上是一块隔离的内存空间)

分类:

内置名称空间:

存放的是:内置的名字与值的绑定关系

生效:python解析器启动

失效:python解析器关闭

全局名称空间:

存放的是:文件级别定义的名字与值的绑定

生效:执行python文件时,以该文件级别定义的名字与值的绑定关系

失效:文件执行完毕

局部名称空间:

存放的是:函数内部定义的名字与值的绑定关系

生效:调用函数时,临时生效

失效:函数调用结束

加载顺序:先内资,再全局,最后局部

寻找顺序:先局部,再全局, 最后内置

作用域:

注意:作用域关系,在函数定义时,就已经固定了,与调用位置无关。

使用函数对象可以打破作于域的层级关系。

全局作用域:包含内置名称空间与全局名称空间。

全局存活,全局生效

globals(),显示全局作用域中的名字对应关系

局部作用域:包含局部名称空间

临时存活,局部生效

locals(),显示当前局部作用域中的名字对应关系

相关关键字:都是在函数内部使用

global 申明使用全局作用域中的名字           nonlocal 申明不使用的本级局部作用域中的名称

python函数名的作用_Python:函数名称空间与作用域:相关推荐

  1. 10-Python入门学习-函数的对象与嵌套、名称空间与作用域、闭包函数

    一.函数的对象 函数是第一类对象,指的是函数名指向的值(函数)可以被当作数据去使用 def func():# func=函数的内地址print('from func')print(func)age=1 ...

  2. python中注释的作用_Python函数添加注释的好处

    前面的教程中,我们已经学习了 Python 中的注释方式,单行注释以#开头,进行多行注释时通常用三个单引号'''将注释部分包裹起来. 在函数的定义中,常利用多行注释给函数写文档,称为函数文档.为什么要 ...

  3. python 函数可以作为容器对象的元素_python第十二天, 三元表达式, 函数对象,名称空间与作用域,函数的嵌套定义...

    复习 1. 字符串的比较: 2. 函数的参数:形参与实参 3. 实参的分类:位置实参与关键字实参 4. 形参分类: 1.无值位置形参 2.有值位置形参 3.可变长位置形参 4.有无值关键字形参 5.可 ...

  4. 名称空间与作用域、闭包函数、 装饰器

    1 名称空间与作用域 2  闭包函数 3  装饰器 6.7 名称空间与作用域 内置名称空间: 存放的是:内置的名字与值的绑定关系 生效:python解释器启动 失效:Python解释器关闭 全局名称空 ...

  5. python 类的执行中保部存值_python函数名称空间与作用域、闭包

    一.命名空间概念 1.命名空间(name space) 名称空间是存放名字的地方. 若变量x=1,1存放在内存中,命名空间是存放名字x.x与1绑定关系的地方. 2.名称空间加载顺序 python te ...

  6. python函数作用域与闭包_python函数名称空间与作用域、闭包

    一.命名空间概念 1.命名空间(name space) 名称空间是存放名字的地方. 若变量x=1,1存放在内存中,命名空间是存放名字x.x与1绑定关系的地方. 2.名称空间加载顺序 python te ...

  7. python中嵌套函数的应用实例-实例详解python函数的对象、函数嵌套、名称空间和作用域...

    函数的对象 python中一切皆对象 函数对象的四大功能 引用 def f1(): print("from f1") f1() #调用函数 print(f1) print(&quo ...

  8. Python基础知识——函数的基本使用、函数的参数、名称空间与作用域、函数对象与闭包、 装饰器、迭代器、生成器与yield、函数递归、面向过程与函数式(map、reduce、filter)

    文章目录 1 函数的基本使用 一 引入 二 定义函数 三 调用函数与函数返回值 2 函数的参数 一 形参与实参介绍 二 形参与实参的具体使用 2.1 位置参数 2.2 关键字参数 2.3 默认参数 2 ...

  9. python之函数名称空间,作用域,嵌套函数

    目录 嵌套函数 定义 名称空间的三大类(只存变量名) 名称空间加载顺序 变量名的查找顺序为 作用域 嵌套函数 定义 函数内部定义的函数,无法在函数外部使用内部定义的函数. def f1():def f ...

  10. python中sort返回值_Python函数你真的都学会了吗?来看看这篇Python高阶函数!

    二.高阶函数 高级函数, 英文叫 Higher-order Function. 那么什么是高阶函数呢? 在说明什么是=高阶函数之前, 我们需要对函数再做进一步的理解! 2.1 函数的本质 函数的本质是 ...

最新文章

  1. Android中的HTTP通信
  2. Jmeter工具中参数化、正则表达式提取器、响应断言的实现
  3. Ran out of input
  4. 一名即将大三的小伙子在疫情期间的思考与总结
  5. 学生签到系统c代码_C语言实现简单学生学籍管理系统
  6. Error detection in Knowledge Graphs: Path Ranking, Embeddings or both?-学习笔记
  7. git ssh拉取代码_win10下git初始安装及配置工作
  8. 软件产品质量要求与评价_软件质量模型
  9. spring认证的一些核心类
  10. 工具使用-----Jmeter教程 简单的压力测试
  11. leetcode—17.递归题目python解答
  12. java class查看器_java class文件查看工具
  13. wifi网卡工作模式和iwconfig
  14. golang服务器压力测试,压力测试 - Go语言中文网 - Golang中文社区
  15. mmpi明尼苏达多项人格测验量表解读
  16. 国民技术 MCU JLink仿真调试环境配置
  17. 除了X站,程序员还喜欢上这些网站...
  18. 川大和哈工大计算机学院,哈尔滨工业大学计算机科学与技术学院
  19. 楚汉传奇 页游 一键端 单机自玩
  20. camera module controll bar 隐藏显示控制

热门文章

  1. Flutter进阶第2篇:Dio库实现网络请求以及动态渲染数据
  2. Flutter进阶第1篇: http get请求数据、post提交数据、以及渲染动态数据
  3. Flutter原理 flutter架构、flutter UI系统、BuildContext、Widget与Element、命中测试hitTest、flutter显示流程分析
  4. Android 自动轮播图+滑动效果
  5. 组合数取模模板(2)
  6. session cookie区别 客户端存储
  7. [Python] 进制转换
  8. 查找目录下的所有文件中是否含有某个字符串
  9. [原创]Linux实现服务延迟启动
  10. JS里设控件不可用取值