python摸爬滚打之day010----函数进阶】的更多相关文章

命名空间 内置命名空间 存放了python解释器为我们提供的名字:print,input...等等,他们都是我们熟悉的,拿过来就可以用的方法. 内置的名字在启动解释器(程序运行前)的时候被加载在内存里. 全局命名空间 放置了我们设置的所有变量名和函数名. 是在程序从上到下被执行的过程中依次加载进内存里. 局部命名空间 函数内部定义的名字. 调用函数的时候.才会产生这个名称空间,函数执行结束的时候,这个名称空间就消失(被释放)了. 使用规则 在局部:可以使用全局.内置命名空间中的名字 在全局:可以…
1.函数动态传参 *args : 将所有的位置参数打包成一个元组的形式. **kwargs : 将所有的关键字参数打包成一个字典的形式. 形参的接收顺序:    位置参数 > *args > 默认值参数> **kwargs. 2.命名空间 命名空间: 在python解释器执行后, 内存中开辟的一块用于存放变量名和值对应关系的一个空间. 分类:    内置命名空间: python自己提供的一些方法, print(), int()...    全局命名空间: .py文件中, 函数外声明的变量…
11. 前⽅⾼能-装饰器初识本节主要内容:1. 函数名的运⽤, 第⼀类对象2. 闭包3. 装饰器初识 一:函数名的运用: 函数名是一个变量,但他是一个特殊变量,加上括号可以执行函数. ⼆. 闭包什么是闭包? 闭包就是内层函数, 对外层函数(非全局)的变量的引⽤. 叫闭包 可以使用_clesure_检测函数是否是闭包  返回cell则是闭包,返回None则不是 闭包的好处: 由它我们可以引出闭包的好处. 由于我们在外界可以访问内部函数. 那这个时候内部函数访问的时间和时机就不⼀定了, 因为在外部,…
本节主要内容:1. 函数参数--动态传参2. 名称空间, 局部名称空间, 全局名称空间, 作⽤域, 加载顺序.3. 函数的嵌套4. gloabal, nonlocal关键字 ⼀. 函数参数--动态传参之前我们说过了传参, 如果我们需要给⼀个函数传参, ⽽参数⼜是不确定的. 或者我给⼀个函数传很多参数, 我的形参就要写很多, 很⿇烦, 怎么办呢. 我们可以考虑使⽤动态参数.形参的第三种: 动态参数动态参数分成两种 ::: 1--->>>动态接收位置参数 首先,先回顾依稀位置参数: 注意:动…
22day 1.函数命名空间: 2.函数作用域的查找顺序:LEGB locals->enclosing function ->globals ->_builtins_ a.locals是函数内的名字空间,包括局部变量和形参 b.enclosing外部嵌套函数的名字空间 c.globals全局变量,函数定义所在模块的名字空间 d.builtins内置模块的名字空间 3.闭包 关于闭包,即函数定义和函数表达式位于另一个函数的函数体内(嵌套函数).而且,这些内部函数可以访问它们所在的外部函数中…
匿名函数 lambda的用法: lambda x:x+1 解释,同等于以下函数 def test(x): return x+1 因为没有函数名,所以称为匿名函数 只适用于简易的逻辑,复杂逻辑无法实现 lambda一般是嵌套在其他内容中,只是为了简化代码 函数作用域 理解全局变量和局部变量的概念 全局变量,定义的变量无缩进,即在代码层最外围: 局部变量,定义的变量有缩进,属于某个代码块中. 全局变量: a  = 1 def test(): print(a)    #结果为1 print(a)   …
def generator(): print(123) yield 1 print(456) yield 2 g = generator() ret = g.__next__() print('***'ret) ret = g.send(None) #send 效果和 next一样 print('***'ret) next与send 归纳: 1.send 获取下一个值得效果和next基本一致 2.只是在获取下一个值得时候,给上一个yield的位置传一个参数 使用send的注意事项 1.第一次使用…
函数进阶 1.函数命名空间和作用域 命名空间一共分为三种: 全局命名空间 局部命名空间 内置命名空间 *内置命名空间中存放了python解释器为我们提供的名字:input , print , str , list , tuple... 三种命名空间之间的加载与取值顺序: 加载顺序:内置命名空间(程序运行前加载)->全局命名空间(程序运行中:从上到下加载)->局部命名空间(程序运行中:调用时才加载) 取值顺序: 在局部调用:局部命名空间->全局命名空间->内置命名空间 在全局调用:全…
函数基础部分 .什么是函数? 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率. 2.定义函数 定义:def 关键词开头,空格之后接函数名称和圆括号(),最后还有一个":". def 是固定的,不能变,他就是定义函数的关键字. 空格:为了将def关键字和函数名分开,必须空(四声),当然你可以空2格.3格或者你想空多少都行,但正常人还是空1格. 函数名:函数名只能包含字符串.下划线和数字且不能以数字开头.虽然函数名可以随便起,…
函数基础部分 1.什么是函数? 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率. 2.定义函数 定义:def 关键词开头,空格之后接函数名称和圆括号(),最后还有一个":". def 是固定的,不能变,他就是定义函数的关键字. 空格:为了将def关键字和函数名分开,必须空(四声),当然你可以空2格.3格或者你想空多少都行,但正常人还是空1格. 函数名:函数名只能包含字符串.下划线和数字且不能以数字开头.虽然函数名可以随便起,…