当我在我的一个函数中对某个对象执行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文件中执行此调用。这是怎么回事?
提前致谢!
答案 0 :(得分:3)
最有可能的是,你有一个名为list
的全局变量,它隐藏了内置名称list
。不要使用内置类的名称作为变量名(甚至更好,根本没有内置名称)。