2017-08-13 116 views
0

我试图使用python内置函数计算总和,bu得到上述错误。 *的.pyUnboundLocalError:在分配odoo10之前引用的局部变量'sum'

def _total_sum(self): 
    stock_quant_ids = self.env['stock.quant'].search([('product_id','=',product.id)]) 
    inventory_value = (sum(line.inventory_value for line in stock_quant_ids)) 

如何解决这个问题?

+6

您在某处使用'sum'作为变量名称。不要这样做。 – user2357112

+0

谢谢@ user2357112。 – KbiR

+0

为什么不正确的答案?我仍然在没有答案的列表中找到这个问题,然后到了这里。 – Majikat

回答

-1

由于@ user2357112在问题的评论中提到,您不能使用变量的内置函数名称。

+0

这是测试某件东西是否内置的可怕方法。它不会注册你已经踩过的名字,或者诸如'list'之类的东西。 – user2357112

+0

@ user2357112:你当然是对的。我并不是说它是对内置函数的一般测试,而是证明和是一的(因为OP评论说'(...)我认为[你的]是[正确答案'))。因此,我没有想到列表和分配的东西来总结,然后测试它。由于它造成了混淆,我将删除该部分。感谢您的提醒! – coreuter

相关问题