淘先锋技术网

首页 1 2 3 4 5 6 7

在Python中,global关键字用于在函数或其他局部作用域中使用全局变量。使用global关键字的主要原因有两个:1. 在函数中修改全局变量的值。2. 在函数中访问全局变量,避免UnboundLocalError错误。例子1:修改全局变量的值

python
count = 0 

def add():
    global count
    count += 1
    
add()
print(count) # 1

这里如果不使用global关键字,会在函数add()内创建一个局部变量count,不会修改全局变量。例子2:访问全局变量

python 
count = 0

def print_count():
    print(count)
    
print_count() # 0

但是如果在函数中试图修改全局变量:

python
count = 0

def add_one():
    count += 1 # UnboundLocalError
    
add_one()

这时就必须使用global关键字了:

python
count = 0

def add_one():
    global count
    count += 1
    
add_one()    
print(count) # 1

总结一下global的使用原则:- 如果要在函数内部修改全局变量,需要使用global声明。- 如果只是访问全局变量,不修改,则不需要global。- global只适用于变量,不适用于常量和类等其他对象。- 使用global会使代码难以维护,尽量避免使用。