diff options
-rw-r--r-- | Lib/decimal.py | 14 | ||||
-rw-r--r-- | Lib/numbers.py | 5 |
2 files changed, 15 insertions, 4 deletions
diff --git a/Lib/decimal.py b/Lib/decimal.py index 4f23d33..dbe0695 100644 --- a/Lib/decimal.py +++ b/Lib/decimal.py @@ -1519,6 +1519,20 @@ class Decimal(object): __trunc__ = __int__ + @property + def real(self): + return self + + @property + def imag(self): + return Decimal(0) + + def conjugate(self): + return self + + def __complex__(self): + return complex(float(self)) + def __long__(self): """Converts to a long. diff --git a/Lib/numbers.py b/Lib/numbers.py index eed1f42..b8a5c36 100644 --- a/Lib/numbers.py +++ b/Lib/numbers.py @@ -51,10 +51,7 @@ Inexact.register(float) ## Notes on Decimal and it how relates to the numeric tower ## -------------------------------------------------------- -## Decimal is Real except that it does not support the real and imag properties -## or the conjugate() and complex() methods. If those get defined at some -## point, they cannot use the default implementation which would be sensitive -## to decimal.Context and could produce different answers at different times. +## Decimal is Real except that it does not support rich comparisons. ## ## Decimal has some of the characteristics of Integrals. It provides ## logical operations but not as operators. The logical operations only apply |