博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
day11 函数对象
阅读量:5061 次
发布时间:2019-06-12

本文共 697 字,大约阅读时间需要 2 分钟。

day11 函数对象


函数名其实就是变量名

  1. 引用,赋值
  2. 当作函数的返回值
  3. 当作函数的参数
  4. 作为容器的元素

函数的嵌套

函数的定义阶段只检测语法,不执行代码

所以没有被调用的函数内部只要没有语法上的错误就不会报错

煞笔才用嵌套

名称空间

内置名称空间

所学的所有内置方法,其实就是一个个函数,这些函数被封装后具有了某种功能

len() 是python的内置方法,python启动的时候,就会定义len()函数,并且把len()丢入内存空间,这个内存空间叫做内置名称空间

生命周期: python启动的时候活了,运行完就死了

全局名称空间

除了内置和局部,就是全局

生命周期:程序/文件运行的时候才会活,运行完毕就死了

局部名称空间

函数内部的都叫局部,也就是说函数内部定义的名字都放入了局部名称空间中了

生命周期:函数运行的时候会活,运行完就死了

执行顺序

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

查找顺序

从当前名称空间开始查找,然后逐步往上,则顺序为局部-->全局-->内置

作用域

作用域关系在函数定义阶段就已经确定了

全局作用域: 适用于全局+内置,也就是说内置和全局定义的名字所有地方都能获取到

局部作用域:只能适用于局部范围,在局部定义的名字只能在局部获取到

函数与函数之间可能会有相同名字的变量,但是这两个变量毫无关系,作用域不同

不推荐使用的global/nonlocal

global:局部修改全局

nonlocal:将作用域等级提升一级,但最高不能到全局

转载于:https://www.cnblogs.com/wsxiaoyao/p/10952331.html

你可能感兴趣的文章
关于js sort排序方法
查看>>
JAVA面试常见问题之Redis篇
查看>>
Problem - 1118B - Codeforces(Tanya and Candies)
查看>>
jdk1.8 api 下载
查看>>
getElement的几中属性介绍
查看>>
平面最接近点对
查看>>
HTML列表,表格与媒体元素
查看>>
PHP、Java、Python、C、C++ 这几种编程语言都各有什么特点或优点?
查看>>
雨林木风 GHOST_XP SP3 快速装机版YN12.08
查看>>
java对象的深浅克隆
查看>>
Hadoop流程---从tpch到hive
查看>>
数据结构3——浅谈zkw线段树
查看>>
Introduction to my galaxy engine 2: Depth of field
查看>>
V2019 Super DSP3 Odometer Correction Vehicle List
查看>>
Python 3.X 练习集100题 05
查看>>
设计器 和后台代码的转换 快捷键
查看>>
在线视频播放软件
查看>>
用代码生成器生成的DAL数据访问操作类 基本满足需求了
查看>>
28初识线程
查看>>
Monkey测试结果分析
查看>>