要创建Decimals,必须先导入decimal模块
decimal的精度可以由我们自己指定
decimal.Decimal(x) #x可以是一个整数或字符串,但不能是浮点数
>>>import decimal
>>>a = decimal.Decimal(9876)
>>>b = decimal.Deciaml("54321.01234567898754321")
>>>a + b
>>>Decimal('64197.012345678987654321')
decimal.Deciaml.from_float(x); #x可以是一个浮点数
>>>Deciaml.from_float(0.1)
Decimal('0.1000000000000000055511151231257827021181583404541015625')
>>>Decimal.from_float(float('nan'));
Decimal('NaN')
>>>Decimal.from_float(float('-inf'));
Decimal('-Infinity')
Python对象有两种输出形式
- 字符串形式,在设计目标上为了更易于阅读
- 表面形式 ,在设计目标上则是生存备用的输出信息,作为Python解释器的输入时会重新产生所代表的对象
>>>print(decimal.Deciaml(23) / decimal.Deciaml("1.05")); #字符串形式
21.90476190476190476190476190
>>>decimal.Deciaml(23) / decimal.Deciaml("1.05"); #表象形式
Deciaml("21.90476190476190476190476190")