python中定义的函数在完成后删除变量

时间:2012-10-27 14:02:02

标签: python python-3.x

在python中创建了一个模块。它充当机器代码的模型。我有一个名为accumulator的变量。

accumulator=0

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

def function(number):
  accumulator=number
  return

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

如何创建一个即使在创建它的函数完成后仍会被识别的变量?

1 个答案:

答案 0 :(得分:1)

这是因为accumulator是全局的,函数内的accumulator=number绑定了一个等于数字的新本地名accumulator。在function范围内,您可以使用accumulator但不能在不使用global语句的情况下分配给它def function(number): global accumulator accumulator = number

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

None

请注意,返回是多余的,就像Python语句没有返回一样,它默认返回{{1}}。