#函数的嵌套调用和函数的嵌套定义
#命名空间:三种:内置 全局 局部
#作用域:两种:全局 局部
#作用域链:名字的使用 是从小范围到大范围的就近事件
#globals和locals方法
#小范围可以使用大范围的,但不能修改
#如果想要修改全局的:使用global关键字 —— 尽量避免
#如果想要修改最近拥有该变量的外层函数的:使用nonlocal ——不影响全局
namespace 命名空间,名称空间局部命名空间:每一个函数都拥有自己的命名空间全局命名空间:写在函数外面的变量名内置命名空间:python解释器启动之后就可以使用的名字
python的解释器要运行起来加载顺序:    先所有内置命名空间的中的名字-->然后按照顺序加载全局命名空间中的名字    局部命名空间中的名字:在调用函数的时候产生,并且随着调用的结束而消失
函数的嵌套定义
def func():def qqxing():print('我是qqxing')qqxing()
func()

作用域:一个名字可以使用的区域全局作用域:内置名字空间和全局名字空间中的名字都属于全局作用域局部作用域:局部名字空间中的名字属于局部作用域局部作用域可以使用全局作用域中的变量而全局作用域不能使用局部作用域中的变量局部作用域中还可以嵌套更小的局部作用域作用域链:小范围作用域可以使用大范围的变量,但作用域链是单向的,不能反向应用
n = 0
def func1():n = 1def func2():n = 2def func3():n = 3print(n)func3()func2()func1()
def func():a = 10b = 20print(locals())  #保存了当前作用域中变量print(globals())n = 10
m = 22
print(globals())   #保存了在全局作用域中的名字和值
func()globals()   #保存了在全局作用域中的名字和值
locals() #中的内容会根据执行的位置来决定作用域中的内容
如果在全局执行
globals和locals打印的结果是一致的

第一类对象的概念:函数名可以赋值可以作为一个数据结构的元素可以作为一个函数的参数可以作为一个函数的返回值

转载于:https://www.cnblogs.com/jassin-du/p/7773354.html

函数命名空间,函数的名字相关推荐

  1. 浅谈Python3函数命名空间与作用域

    日期:2020年1月23日 作者:Commas 注释:前一章节讲述了命名空间和作用域的知识,现在我们来谈一谈Python3函数的命名空间吧. 如果您想了解更多有关Python的知识,那么请点<我 ...

  2. python命名空间和闭包_Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】...

    本文实例讲述了Python函数基础用法.分享给大家供大家参考,具体如下: 一.什么是命名关键字参数? 格式: 在*后面参数都是命名关键字参数. 特点: 1.约束函数的调用者必须按照Kye=value的 ...

  3. python函数命名空间_python (函数命名空间和作用域)

    一. 动态传参 之前学习过了传参,如果我要给一个函数传参,但参数的个数的不确定的.或者我要给某偶一个函数传很多的参数,我们就要对形参定义很多很多. 基于以上的问题,我们就可以使用动态传参. #位置参数 ...

  4. Python基础 F-03 函数-命名空间与作用域

    函数-命名空间与作用域 文章目录 函数-命名空间与作用域 一.命名空间 1.1.定义与作用 1.2.分类 1.4.生命周期 命名空间创建周期 命名空间结束周期 二.作用域 2.1.定义与作用 2.2. ...

  5. 超详细的C++入门学习(命名空间,缺省参数,内联函数,函数重载等)

    目录 前言 1. C++关键字 2. 命名空间 2.1定义命名空间 2.2使用using将命名空间中某个成员引入 2.3使用using namespace 命名空间名称 引入 3. C++输入& ...

  6. 命名空间函数用法及例子

    命名空间函数的实现示例,如果命名空间存在,便不会再重新创建它. var MYAPP=MYAPP || {};MYAPP.namespace = function(ns_string){var part ...

  7. 给函数取一个“好”名字

    参考资料:https://www.cnblogs.com/dolphin0520/p/10567879.html 一.常见的函数命名风格 目前,函数最常见的两种命名风格: (1)驼峰命名法: 多个单词 ...

  8. c++之头文件基本输出,输入,名字空间,引用,内联函数,函数重载,缺省参数

    c++之头文件,基本输出,输入,名字空间,引用,内联函数,函数重载,缺省参数 文章目录 c++之头文件,基本输出,输入,名字空间,引用,内联函数,函数重载,缺省参数 前言 一.头文件,基本输出,输入 ...

  9. python函数定义时带号的可变参数_在定义函数时,某个参数名字前面带有一个 * 符号表示可变长度参数,可以接收任意多个普通实参并存放于一个元组之中。_学小易找答案...

    [填空题]任意长度的 Python 列表.元组和字符串中最后一个元素的下标为 ( ) . [简答题]从键盘输入一个字符串,将小写字母全部转换成大写字母, 输出到磁盘文件"D:\test.tx ...

  10. python定义匿名函数关键字_Python(11):Python函数基础(定义函数、函数参数、匿名函数)...

     函数先定义函数,后调用 一.定义函数: 1.简单的规则: 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 (). 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数. ...

最新文章

  1. C++ cin相关函数总结
  2. monty python-Monty Python
  3. 503 service unavailable错误提示如何解决
  4. 【APUE】Chapter17 Advanced IPC sign extension 结构体内存对齐
  5. 按文件类型获取其图标
  6. mybatis配置文件不在resources目录下时需进行的额外配置方法
  7. 韵镖侠登录不上 显示无法连接到服务器,什么是韵镖侠?韵镖侠是做什么的?...
  8. jfinal java类型和数据库类型_java下JFinal getModel方法及数据库使用出现问题解决教程...
  9. android h5使用缓存_Android SDK 的 H5 打通方案演进 | 数据采集
  10. Python学习入门2:Python学习路线(课程大纲+Python视频教程+下载地址)
  11. 单点登录原理与简单实现【转载】
  12. python封装exe后其机器能用么_python打包成exe格式后,在部分机子上没法运行
  13. 有关Silverlight TreeView组件的研究[2]——Silverlight学习笔记(7)
  14. 2018-12-26 课堂笔记 for循环
  15. 【Android】12.0 第12章 Intent及其过滤器—本章示例主界面
  16. 后台管理系统--毕业设计02
  17. 最详细的《牛津阅读树》(Oxford Reading Tree)攻略,没有之一
  18. c语言万年历编写程序分析,C语言 万年历程序
  19. 21张手机壁纸,送给我爱的你们~
  20. 入侵防御系统_入侵防御系统简介

热门文章

  1. 活动目录的介绍:深入浅出Active Directory系列(一)
  2. 【Ubuntu操作系统】命令行解析函数getopt/getopt_long
  3. 【算法学习】【图像增强】基于拉普拉斯算子的图像锐化
  4. 【tf.keras.Model】构建模型小结(部分问题未解决)
  5. CryoSat-2卫星介绍
  6. r语言TeachingDemos包绘制黑白脸谱图
  7. Google Exoplayer之全面认识
  8. android虚拟机模糊,Android studio虚拟机在启动界面和桌面出现画面模糊花屏问题的解决方法...
  9. 将某一列转换为字符类型_还在为数据清洗抓狂?这里有一个简单实用的清洗代码集...
  10. 初二生态系统思维导图_鑫讲堂:初二年级十一月微讲座汇报(二)