Skip to main content

Decimal compatability with float

Project description

https://img.shields.io/travis/bennylope/fdecimal.svg https://img.shields.io/pypi/v/fdecimal.svg

Decimal compatability with float

  • Free software: BSD license

Features

Implicit float-to-Decimal coercion for arithmetic operations.

Instead of this:

>>> from decimal import Decimal
>>> Decimal(12.0) * 0.5
TypeError: unsupported operand type(s) for *: 'Decimal' and 'float'

Use FDecimal:

>>> from fdecimal import FDecimal
>>> FDecimal(12.0) * 0.5
Decimal('6.0')

As you can see it only solves part of the problem - the result still can’t be added with a float value without explicit type coercion, but it solves some problems where (1) its not clear what type the other value will be, (2) you don’t want to add code explicitly handling that coercion, and (3) an arithmetic surprises due to working with different numeric types are acceptable.

TODO

  • Missing operations, including mod, floor div

  • Python 3 support

  • Allow cdecimal swap-in

Done:

  • Return FDecimal objects rather than Decimal objects

History

0.2.0 (2016-01-14)

  • Add support for returning FDecimal objects from operations

0.1.0 (2016-01-14)

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fdecimal-0.2.0.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

fdecimal-0.2.0-py2.py3-none-any.whl (5.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file fdecimal-0.2.0.tar.gz.

File metadata

  • Download URL: fdecimal-0.2.0.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for fdecimal-0.2.0.tar.gz
Algorithm Hash digest
SHA256 26a49ba88a96d341073dd136d5fc8136f2693f88b5dc4b5b2e56c9d87c7cecca
MD5 d82c6ac1e294ccfebb2590a365980ecb
BLAKE2b-256 ae1d1a1261e4074e34c974dd4e15ec3438a9c5af2987c7f71145dd6764ece13d

See more details on using hashes here.

File details

Details for the file fdecimal-0.2.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for fdecimal-0.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 a94c8e7fbdbcde63f0f4108601f43720e445ea89eb07fc3da6b514bf1c7e7ee6
MD5 e03239084c687ff2afd7d785139ffa96
BLAKE2b-256 72ab79f3af61304197b082b3184ce1332dd6dbfd0c6fa5a538ffa19f18250a08

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page