十进制与浮点的兼容性
fdecimal的Python项目详细描述
十进制与浮点的兼容性
- 免费软件:BSD许可证
功能
算术运算的隐式浮点到十进制强制。
而不是这个:
>>> from decimal import Decimal >>> Decimal(12.0) * 0.5 TypeError: unsupported operand type(s) for *: 'Decimal' and 'float'
使用fdecimal:
>>> from fdecimal import FDecimal >>> FDecimal(12.0) * 0.5 Decimal('6.0')
正如你所看到的,它只解决了问题的一部分-结果仍然不可能是 添加了一个float值,没有显式的类型强制,但是它解决了一些 问题在于:(1)不清楚其他值的类型;(2)您 不希望添加显式处理该强制的代码,并且(3) 由于使用不同的数字类型而带来的算术惊喜是 可以接受。
待办事项
- 缺少操作,包括mod、floor div
- python 3支持
- 允许CDecimal交换
完成时间:
- 返回fdecimal对象而不是decimal对象
历史记录
0.2.0(2016-01-14)
- 添加对从操作返回fdecimal对象的支持
0.1.0(2016-01-14)
- pypi上的第一个版本。