unittest: Proposal to add failUnlessNear
Antoon Pardon
apardon at forel.vub.ac.be
Tue Jul 20 12:28:03 CEST 2004
Op 2004-07-20, Roy Smith schreef <roy at panix.com>:
> In article <slrncfpk65.m9.apardon at trout.vub.ac.be>,
> Antoon Pardon <apardon at forel.vub.ac.be> wrote:
>
>> Only if you want them to be. Floats are a subset
>> of complex and as such can be treated exactly
>> the same.
>
> Why do you say floats are a subset of complex?
because if x is a float it is equal to x + 0j.
So whatever algorithm you use to see whether
two complex numbers a and b are near enough,
you can use that same algorithm to see whether
two floats f and g are near enough by using
f + 0j and g + 0j for a and b.
more specifically you can use the test:
abs(a - b) < tolerance.
for complex numbers as well as floats, and
for every numberlike object you wish to
define that has a __sub__ and an __abs__
method.
> There's a reasonable
> argument that could be made that int/float and scalar/complex are
> orthogonal properties. No reason why you shouldn't be able to have a
> set of numbers which are 2-tuples with real and imaginary parts, each of
> which has an integral value. The set would, I believe, be closed for
> the same operations that integers are (addition, subtraction, and
> multiplication).
Indeed no reason, but you wouldn't call them complex and I would
call the integers a subset of these defined numbers for the same
reason as I called the floats a subset of complex.
--
Antoon Pardon
More information about the Python-list
mailing list