搜索
您的当前位置:首页python的global函数学习

python的global函数学习

来源:飒榕旅游知识分享网


———————————————————

Python变量的作用域一共有4种,分别是:

  • L (Local) 局部作用域
  • E (Enclosing) 闭包函数外的函数中
  • G (Global) 全局作用域
  • B (Built-in) 内建作用域 以 L –> E –> G –>B 的规则查找,即:在局部找不到,便会去局部外的局部找(例如闭包),再找不到就会去全局找,再者去内建中找

  • 在这个例子中设置的 x=5 属于全局变量,而在函数内部中没有对 x 的定义。

  • 根据 Python 访问局部变量和全局变量的规则:当搜索一个变量的时候,Python

  • 先从局部作用域开始搜索,如果在局部作用域没有找到那个变量,那样 Python 就会像上面的案例中介绍的作用域范围逐层寻找。

  • 最终在全局变量中找这个变量,如果找不到则抛出 UnboundLocalError 异常。

  • global 关键字为解决此问题而生,在函数 func_c中,显示地告诉解释器 x 为全局变量,然后会在函数外面寻找 x 的定义,执行完
    x = x + 1 后,x 依然是全局变量。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top