在python中制作了一个模块。这是机器代码的模型。我有一个名为累加器的变量。



accumulator=0


但是,在运行更改累加器的函数后,如下所示

def function(number):
  accumulator=number
  return


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

如何创建即使在创建函数完成后仍可识别的变量?

最佳答案

这是因为accumulator是全局的,并且函数内部的accumulator=number绑定了一个新的本地名称accumulator,该名称等于数字。在function中,您可以使用accumulator,但是如果不使用global语句,则不能将其分配给它。

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

def function(number):
    global accumulator
    accumulator = number


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

10-08 03:57