美文网首页
2019-04-26匿名函数、变量的作用域

2019-04-26匿名函数、变量的作用域

作者: 十点半的橙汁 | 来源:发表于2019-04-27 09:55 被阅读0次

1.recode

1.函数的定义:函数就是实现某一特定功能的代码段的封装
2.函数的声明:
def 函数名(形参列表):
函数体

注意:
1.python中的函数不支持函数的重载(名字相同的函数只能有一个)
2.声明函数的时候,函数体不会执行
3.函数的调用
函数名(实参列表)

(重点!!)调用过程:
1)回到函数声明的位置
2)传参
3)执行函数体
4)执行完函数体,确定返回值
怎么确定返回值:看执行完函数有没有遇到return,如果遇到return后面的值就是返回值
5)回到调用函数的位置,执行后面的代码。(这个时候函数调用表达式的值,就是返回值)

4.函数的参数
1)位置参数和关键字参数(位置参数要在关键字前)
2)参数默认值(没有默认值的参数要放在前面)
3)函数中参数和返回值类型说明
4)不定长参数
*参数名, **参数名

5.返回值
1)怎么确定返回值:看return
2)怎么获取返回值:使用函数调用表达式

序列前面加“*”就是将这个序列展开。

2.匿名函数:匿名函数就是没有名字的函数

1)
lambda 参数列表:返回值

2)说明
lambda --- 关键字
参数列表 --- 相当于普通函数的形参列表.(变量1,变量2,.....) 至少要有一个
: --- 固定写法
返回值 --- 相当于普通函数中的return;可以是除了赋值语句以外的所有表达式,
只能是一条语句(不能是赋值语句)
注意:
1.匿名函数本质还是函数,之前函数中的语法绝大多数都适用。(除了类型名对参数类型进行说明不支持)
2.匿名函数能做的事情,普通函数都可以。只是匿名函数简洁。
'''

3.变量的作用域:指的就是变量的使用范围

4.全局变量、局部变量

1)全局变量:没有声明在函数/类中的变量都是全局变量,
全局变量的作用域是从变量声明开始到整个py程序结束。

2)局部变量:声明在函数中的变量都是局部变量,
局部变量的作用域就是从变量声明到函数结束。
注意:形参也是局部变量。
当在调用函数的时候,系统会自动的在内存的栈区间为这个函数开辟一个独立的内存区域,用来保存在函数中声明的变量或者产生的数据。当函数调用结束后,这个内存区域会自动销毁。

3)两个关键字:global和nonlocal
函数内,在变量前加global,就将局部变量变成全局变量。
(1)global --- 在函数内声明一个全局变量(在函数中使用)

global 变量名
变量名 = 值

(2)nonlocal ---想要在局部的局部中取修改一个局部的值,就使用nonlocal

def func5():
    # global x2
    x2 = 100
    def f():
        nonlocal x2
        x2 = 50
        print(x2)
    f()
    print(x2)

相关文章

  • JS闭包

    一、变量的作用域 变量的作用域分为两种:全局变量和局部变量; 二、闭包的引入 匿名自执行函数实现创建匿名自执行函数...

  • Block

    Block:带有自动变量的匿名函数。 匿名函数:没有函数名的函数,一对{}包裹的内容是匿名函数的作用域。 自动变量...

  • Block

    Block:带有自动变量的匿名函数。匿名函数:没有函数名的函数,一对{}包裹的内容是匿名函数的作用域。自动变量:栈...

  • 2018-06-02 作用域链 闭包 匿名函数

    主要讲了闭包是什么 闭包造成的内存泄漏 匿名函数模拟私有变量 匿名函数模拟块级作用域 匿名函数模拟单例类 作用域链...

  • ios block

    Block概要Block:带有自动变量的匿名函数。匿名函数:没有函数名的函数,一对{}包裹的内容是匿名函数的作用域...

  • Block底层原理

    1、block 定义 :带有自动变量的匿名函数。 匿名函数:没有函数名的函数,一对{}包裹的内容是匿名函数的作用域...

  • day9 函数

      今天主要学习匿名函数、变量的作用域、递归函数、模块等内容。   1、匿名函数的声明   格式为:函数名= la...

  • Day6 js和DOM操作

    一、作用域 函数声明语法: function 函数名(参数列表){函数体} 匿名函数: 函数变量 = functi...

  • day10-markdown总结

    1.匿名函数 2.作用域函数的调用过程是一个全栈的过程全局变量:函数和类外面声明的变量都是全局变量,作用域:从声明...

  • 三、Python函数基础

    字符串进阶 格式化输出 列表进阶 函数 变量的作用域和global变量 lambda匿名函数 python 使用 ...

网友评论

      本文标题:2019-04-26匿名函数、变量的作用域

      本文链接:https://www.haomeiwen.com/subject/mpehnqtx.html