在函数内可以以函数属性的形式声明全局变量:
def func1(): b = func1.a print(b) def func2(): func1.a = 5 func2() func1() print(func1.a)
输出:
5
5
1、func1,fun2定义的先后顺序无关;
2、在执行func1之前必须先执行func2为属性赋值,否则报错;
3、可以将全局变量声明为任意函数的属性:
def func1(): b = func3.a print(b) def func2(): func3.a = 5 def func3(): pass func2() func1() print(func3.a)