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 表示 在局部作用域中,引入上一级的变量,但不是全局变量。

          

                     

            

  • 相关阅读:
    广告效果滚动
    判断背景图片是否加载成功
    css3创建多边形clip属性,可用来绘制不规则图形了
    不允许用户选中文本的两种方法
    栈类模板设计及应用
    HDOJ 题目类型
    极大团数量模板
    HDU 1522 Marriage is Stable 稳定婚姻匹配
    字符串类设计与应用
    正向与反向拓扑排序的区别(hdu 1285 确定比赛名次和hdu 4857 逃生)
  • 原文地址:https://www.cnblogs.com/wf123/p/9305619.html
Copyright © 2011-2022 走看看