• 函数03


    函数的嵌套

      函数的嵌套调用:在调用一个函数的过程中,其内部代码;又调用了其他函数

        其好处是可以简化外层函数的代码,使结构更清晰

        可以将一个大的复杂的功能拆分为多个简单的小功能

      函数的嵌套定义:一个函数内部又定义了另外一个函数

        需要注意的是:内部定义的函数,只能在内部使用,外界无法直接访问

    名称空间

      namespace

      就是存储名字的内存区域

    名称空间的分类

      内置名称空间,存的是解释器自带的名称,其特点是在程序运行过程中一直有效

      特点:是在程序运行过程中一直有效

      生命周期:随着解释器的启动而生效,解释器运行结束则失效

      全局名称空间,只要是顶着最左边写的,没有任何缩进的

      特点:只在文件运行时有效

      生命周期:在文件运行时生效,在文件运行完毕后失效

      局部名称空间:存的是函数内定义的名字

      特点:仅在函数调用时生效

      生命周期:随着函数的调用而生效,函数调用结束则失效

      名称空间的加载顺序

        内置   》 全局 》 局部

      名字的查找顺序

        局部 》 全局 》 内置

    作用域

      域指的是范围,作用域指的是作用的范围,

      全局作用域:包含的是内置名称空间和全局名称空间的名字

      特点:全局有效

      局部作用域:包含的是局部名称空间中的名字

      特点:局部有效

      global:在局部声明一个名字时来自全局作用域的,可以用来在局部修改全局的不可变类型

      nonlocal:声明一个名字时来自当前层外一层作用域,可以用来在局部修改外层函数的不可变类型

    函数对象

      函数是第一类对象:指的是函数名指向的值可以被当作数据去使用

      可以被引用

      可以当中参数传给另一个函数

      可以当作一个函数的返回值

      可以当作容器类型的元素

    闭包函数

      闭:指的是闭包函数是定义在一个函数内部的函数

      包:该内部函数包含对外层函数作用域名字的引用

      闭包函数提供了一种为函数体传值的解决方案

  • 相关阅读:
    《RocketMQ源码系列》心跳机制
    《RocketMQ源码系列》broker是如何注册到nameserver的
    使用redis客户端工具RedisClient连接windows和linux下的redis并解决无法连接redis的问题
    windows下安装Linux
    redis客户端工具RedisClient的使用
    redis哨兵机制配置
    redis数据的两种持久化方式rdb和aof对比(二)
    redis数据的两种持久化方式rdb和aof对比(一)
    windows下的redis主从复制
    redis持久化配置:rdb和aof
  • 原文地址:https://www.cnblogs.com/LinChengcheng/p/10266852.html
Copyright © 2020-2023  润新知