当我运行您的代码时,出现以下错误:
UnboundLocalError: local variable '_total' referenced before assignment
此问题是由以下行引起的:
_total += PRICE_RANGES[key][0]
有关范围和命名空间的文档 说:
Python的一个特殊怪癖是-如果没有有效的
global语句- 对名称的分配总是进入最内部的范围
。分配不复制数据,它们只是将名称绑定到对象。
因此,由于该行实际上是在说:
_total = _total + PRICE_RANGES[key][0]
它
_total在的名称空间中创建
recurse()。由于这
_total是新的未分配内容,因此您不能在其中使用它。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)