首页 > 其他分享 >global

global

时间:2023-03-02 09:12:07浏览次数:30  
标签:全局变量 作用域 global func print x1

x = 15  # 全局变量G


def func_a():
print(x)


def func_b():
print(x)


def func_c():
global x # 在定义函数内声明x为全局变量后,才可以调用x,否则出现错误;
x1 = x + 1 # 此时x1 = 16
x += 5 # 此时x保持为全局变量,变为20;
print(x)
print(x1)


func_a() # 15
func_b() # 15
func_c() # 16
print(x) # 20

一、Python中的域:

L (Local) 局部作用域
E (Enclosing) 闭包函数外的函数中
G (Global) 全局作用域
B (Built-in) 内建作用域

二、Python 访问局部变量和全局变量的规则:

以 L –> E –> G –>B 的规则查找,即:在局部找不到,便会去局部外的局部找(例如闭包),再找不到就会去全局找,再者去内建中找。

如果找不到则抛出 UnboundLocalError 异常。

 

标签:全局变量,作用域,global,func,print,x1
From: https://www.cnblogs.com/zqb190210/p/17170611.html

相关文章