1

用python做了一个模块。它充当机器代码的模型。我有一个名为累加器的变量。

如在

accumulator=0

然而,在我运行一个改变累加器的函数之后,如

def function(number):
  accumulator=number
  return

然后打印累加器以显示其中的内容,它只是说0

即使在创建它的函数完成后,我怎样才能使变量保持被识别?

4

1 回答 1

1

这是因为它accumulator是全局的,并且函数内部正在绑定一个等于数字accumulator=number的新本地名称。accumulatorfunction你可以使用accumulator但你不能在不使用global语句的情况下分配给它。

您将使用以下方法获得所需的结果:

def function(number):
    global accumulator
    accumulator = number

注意 return 是多余的,就像 Python 语句不返回一样,它默认为返回None

于 2012-10-27T14:29:36.347 回答