【python】global关键字

example1:

been_Called = True

def example():
    been_Called = False

example()
print(been_Called)

当运行时发现been_called并没有改变,问题在于函数中会新创建一个局部变量been_called,局部变量在函数结束时就会消失,并且对全局变量没有任何影响。

声明全局变量。global语句高速编译器,在这函数里,对于been_called,指的是全局变量,不需要新创建一个局部变量。

been_Called = True

def example():
    global been_Called
    been_Called = False

example()
print(been_Called)

同时对于可变的管局变量,例如列表,字典,可以不用声明该变量为全局变量就可以修改该值。

 

posted @ 2017-04-10 21:41  AlexBai326  阅读(323)  评论(0编辑  收藏  举报