zoukankan      html  css  js  c++  java
  • 函数参数,和空间

    1. 动态传参, 可以接收任意的参数
      顺序: 位置参数 *args 默认值参数 **kwargs
      形参的一种方式
    1. 位置参数的动态传参 写法: *参数名 例如: *args
      接收的参数是tuple类型
    2. 关键字参数的动态传参. 写法: **参数名 例如: **kwargs
      接收的参数是dict类型
    无敌传参:
      def func(*args, **kwargs):
        pass
      *,** 的作用:
      在形参: 聚合
      在实参: 打散

    2. 作用域的问题
      1. globals() 获取全局作用域中的内容
      2. locals() 获取局部作用域中的内容

    3. 函数嵌套--函数的执行流程
      所有的()表示的是函数的调用

    4. global和nonlocal
      global: 寻找全局作用域中的内容
      nonlocal: 寻找上一级作用域中的内容, 但不能是全局的

    形参的接收顺序。

    :位置参数 *args 关键字参数 **kwargs  默认值参数

    什么是命名空间,什么是全局名称空间,什么是局部名称空间,什么是内置名称空间。

    存放名字和值的关系的空间叫命名空间,也就是存放变量的空间

    全局空间,在函数外面申明的变量形成的命名空间叫全局空间

    局部空间,在函数内部申明的变量形成的命名空间叫局部空间

    内置空间,Python 内部给我们提供的名字叫内置空间

    什么是全局作用域,什么是局部作用域。

    全局作用域,包含内置命名空间和全局命名空间. 在整个⽂文件的任何位置都可以使⽤用

    局部作用域,只有在函数内部可以使⽤用

    名称空间的加载顺序,取值顺序。

    加载顺序:1. 内置命名空间

        2. 全局命名空间

        3. 局部命名空间(函数被执⾏行行的时候

    取值顺序:

    1. 局部命名空间

    2. 全局命名空间

    3. 内置命名空间

    解释一下什么是global,什么是nonlocal。

    Global :不再使⽤用局部作⽤用域中的内容了了. ⽽而改⽤用全局作⽤用域中的变量量(调用全局作用域的变量)

    Nonlocal: 表⽰示在局部作⽤用域中, 调⽤用⽗父级命名空间中的变量量.(永远调用上一级的作用域变量)

  • 相关阅读:
    Java数组的使用
    Java的栈堆以及数组两种不同类型的定义
    Java数组声明的创建
    JAVA递归
    Java可变参数
    Java方法(类--------对象--------方法)
    html块元素和内联元素的区别
    HTML基础介绍
    CSS网页美化元素属性介绍
    ArrayList类的remove(Object o)方法简述
  • 原文地址:https://www.cnblogs.com/wy3713/p/9174730.html
Copyright © 2011-2022 走看看