0

当我在我的一个函数中对一个对象执行 isinstance 调用时,我遇到了一个奇怪的错误:

def subtotals_to_decimal_string(obj):
    """
    Converts subtotals to decimal strings
    """
    if isinstance(obj, list):
        for cr in obj:
            sub = cr['subtotal']
            cr['subtotal'] = Decimal(str(sub)).quantize(Decimal('0.01')).to_eng_string()
        return obj

我得到的错误类似于这篇文章中的错误:http: //bit.ly/MmkObr

奇怪的是我能够在一个单独的 python 文件中执行这个调用。这是怎么回事?

提前致谢!

4

1 回答 1

3

最有可能的是,您有一个名为 的全局变量list,它隐藏了内置的 name list。不要使用内置类的名称作为变量名(或者甚至更好,根本没有内置名称)。

于 2012-06-09T13:31:07.650 回答