zoukankan      html  css  js  c++  java
  • python day- 10 动态参数 函数的嵌套 命名空间和作用域 global和nolocal

    一、动态参数:

          动态参数是形参的一类

          分为:动态位置参数(* + 函数名)表示

             

              调用后返回的是元祖

             动态关键字参数(** + 函数名)表示

              

             形参的排列顺序:

                位置参数     >   动态位置参数    >    默认值参数     >     动态关键字参数

             如果 一个函数中 既有动态位置参数(*args)  又有 动态关键字参数(**kwargs),那么他将会是无敌的参数。

    二、命名空间 

          1、分类

            内置命名空间:python解释器中,内部存在的,如list,dict,tuple,int等等,已经定义好的,就是内置命名空间。

            全局命名空间:我们在py文件中,直接声明,且在函数外部的就是全局命名空间。

            局部命名空间:在函数内部,进行声明的变量,都在内部命名空间。

          2、加载顺序:

            内置命名空间=====》全局命名空间=====》局部命名空间

          3、取值顺序:

            局部命名空间=====》全局命名空间=====》内置命名空间

    三、作用域

          1、定义:作用域就是作用范围。

          2、分类:

              全局作用域:  包含内置命名空间+全局命名空间  ,在整个文件的任何位置都可以使用(遵循从上到下逐行执行)

              局部作用域:在函数内部使用

          3、globals( )函数 用来查看全局作用域中的内容。

            locals()函数用来查看局部作用域中的内容。

    四、函数的嵌套

           

    五、global 和 nolocal

          global 表示 调用全局作用域中的变量,而不再使用局部作用域中的变量。同时可以改变局部作用中变量的值。

          

          nolocal 表示 在局部作用域中,引入上一级的变量,但不是全局变量。

          

                     

            

  • 相关阅读:
    设置Fedora core 6中yum光盘源 去除无收集不克不及翻开软件包治理的标题效果
    从头放置Windows后Ubuntu 8.04启动的恢复
    _desktop.ini“维金(Worm.Viking.m)”的病毒?
    理顺 JavaScript (17) 函数
    理顺 JavaScript (15) 类的继承手段: prototype
    UniCode 速查表
    理顺 JavaScript (16) 使用 prototype
    一句话判断网络是否联通
    给 Edit 两个可选值 回复 "delphi学习中" 的问题
    理顺 JavaScript (20) String 中的正则表达式函数
  • 原文地址:https://www.cnblogs.com/wf123/p/9305619.html
Copyright © 2011-2022 走看看