【python】global的使用

2019-05-05  21:21:41

global a
def cc():
a = 1
a += 1
print(a)
cc()
print(a)

出现错误:NameError: name 'a' is not defined
count_1 = 1
count_2 = 2
count_3 = 3


def cc():
global count_1
# global count_2
print(count_3) # 调用全局变量count_3
count_1 = count_1 + 1
count_2 += 1 # 如果函数内部没有global关键字,无法对全局变量重新赋值,除非像count_2那样重新在函数内部定义global
print('count_1=', count_1)
print('count_2=', count_2)


cc()

运行结果:

 如果想要在函数内为定义在函数外的变量赋值,必须告诉python这个变量名不是局部的,而是全局的,使用global语句来完成。

  可以在函数内调用全局变量,如count_3;但是若要在函数内对变量重新赋值,则需要在函数内重新声明该变量为全局变量,否则就会出现如count_2的错误,局部变量count_2使用前未被赋值

  

猜你喜欢

转载自www.cnblogs.com/jingsx/p/10816401.html
今日推荐