On Sun, 15 Jun 2014 13:28:44 -0400, Roy Smith wrote:
> In article <539dbcbe$0$29988$c3e8da3$54964...@news.astraweb.com>,
> Steven D'Aprano <steve+comp.lang.pyt...@pearwood.info> wrote:
>> On Sun, 15 Jun 2014 01:22:50 -0600, Ian Kelly wrote:
>> > On Sat, Jun 14, 2014 at 8:51 PM, Steven D'Aprano
>> > <steve+comp.lang.pyt...@pearwood.info> wrote:
>> >> Does anyone know any examples of values or types from the standard
>> >> library or well-known third-party libraries which satisfies
>> >> isinstance(a, numbers.Number) but not isinstance(a,
>> >> numbers.Complex)?
>> >>>> issubclass(decimal.Decimal, numbers.Number)
>> > True
>> >>>> issubclass(decimal.Decimal, numbers.Complex)
>> > False
>> Well, that surprises and disappoints me, but thank you for the answer.
> Why would you expect Decimal to be a subclass of Complex?
py> from decimal import Decimal
Mathematically, ℂ (complex) is a superset of ℝ (real), and Decimals are a
kind of real(ish) number, like float:
py> from numbers import Complex
py> isinstance(1.5, Complex)
But then I suppose it is understandable that Decimal doesn't support the
full range of complex arithmetic.