您正在尝试decimal
直接调用模块,而不是使用decimal.Decimal
. decimal
是一个模块对象,其中包含 等属性Decimal
,'DefaultContext'
要访问这些属性,请使用点符号 ( decimal.attr_name
)。
>>> import decimal
>>> decimal.Decimal('1.234')
Decimal('1.234')
>>> decimal.DefaultContext
Context(prec=28, rounding=ROUND_HALF_EVEN, Emin=-999999999, Emax=999999999, capitals=1, flags=[], traps=[Overflow, InvalidOperation, DivisionByZero])
from decimal import ..
您还可以使用以下语法将选定的属性导入当前命名空间:
>>> from decimal import Decimal, DecimalTuple #import two attrs in current namespace
>>> Decimal('1.234') #now use it directly, no dot notation required
Decimal('1.234')