在Python中,可以通过以下几种方法避免使用全局变量:
def add(x, y):
return x + y
result = add(2, 3)
print(result) # 输出 5
class Calculator:
def __init__(self):
self.result = 0
def add(self, x, y):
self.result = x + y
calculator = Calculator()
calculator.add(2, 3)
print(calculator.result) # 输出 5
def calculator():
result = 0
def add(x, y):
nonlocal result
result = x + y
def get_result():
return result
return add, get_result
add_func, get_result_func = calculator()
add_func(2, 3)
print(get_result_func()) # 输出 5
# calculator.py
result = 0
def add(x, y):
global result
result = x + y
# main.py
import calculator
calculator.add(2, 3)
print(calculator.result) # 输出 5
总结起来,避免使用全局变量的关键是通过合适的方式将需要共享的值传递给函数、类、闭包或模块级别的变量,而不是直接在函数内部使用全局变量。