在函数外面可声明全局变量,如下所示,其中a为全局变量。
a = 0
def bbbb():a += 1
- 函数处在全局变量声明范围内
若函数处在全局变量声明范围内,则不需要在函数中加global,可直接在函数中使用,如上所示。若强行加了,则会报错name 'a' is assigned to before global declaration。
- 函数处在全局变量声明范围外
若函数处在全局变量声明范围之外,则需要在函数中加global,如下所示:
a = 0
def bbb():global aa += 1
若在此种情况下不加global,则会报错unresolved reference global variable