| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- # test == != >= <= < >
- assert 1.0 == 1.0
- assert 1.0 != 1.1
- assert 1.0 >= 1.0
- assert 1.0 <= 1.0
- assert 1.0 < 1.1
- assert 1.1 > 1.0
- def eq(a, b):
- dt = a - b
- return dt > -0.001 and dt < 0.001
- # test + - * ** /
- assert eq(1.5 + 3, 4.5)
- assert eq(1.5 + 3.9, 5.4)
- assert eq(5.3 - 2.5, 2.8)
- assert eq(0.2**2, 0.04)
- assert eq(4**(-1.0), 0.25)
- assert eq(2/1, 2.0)
- assert eq(3/2.0, 1.5)
- assert eq(1/9, 0.11111)
- # test += -= *= /=
- x = 3.0
- x += 1
- assert eq(x, 4.0)
- x -= 1
- assert eq(x, 3.0)
- x *= 2
- assert eq(x, 6.0)
- x /= 1.8
- assert eq(x, 3.3333)
- # test __str__, __repr__
- assert str(1.0) == '1.0'
- assert repr(1.0) == '1.0'
- # test float()
- assert float() == 0.0
- assert float(True) == 1.0
- assert float(False) == 0.0
- assert float(1) == 1.0
- assert float(-2) == -2.0
- assert eq(float(1), 1.0)
- assert eq(float(1.0), 1.0)
- assert eq(float(1.1), 1.1)
- assert eq(float(1.9), 1.9)
- assert eq(float(-1.9), -1.9)
- assert eq(float(1.5), 1.5)
- assert eq(float(-1.5), -1.5)
- assert eq(float("123"), 123.0)
- assert eq(float("123.456"), 123.456)
- inf = float("inf")
- assert 1/0 == inf
- assert -1/0 == -inf
- assert 1/inf == 0
- assert -1/inf == 0
- assert 2**-6000 == 0.0
- assert 2.0 ** 6000 == inf
- assert (-2.0) ** 6001 == -inf
- # test .123 forms
- assert float(".123") == 0.123
- assert .123 == 0.123
- assert eq(.5 *2, 1.0)
- assert eq(2 * .5, 1.0)
- assert eq(2 * (.5), 1.0)
- assert eq(2 * (.5 + 1), 3.0)
- assert 1e3 == 1000.0
- assert 1e-3 == 0.001
- assert -1e3 == -1000.0
- assert -1e-3 == -0.001
- assert 1e0 == 1.0
- assert 1e-0 == 1.0
- assert 2e3 == 2000.0
- assert -2e-3 == -0.002
- assert 3.4e-3 == 0.0034
- assert 3.4e+3 == 3400.0
- assert abs(1.0) == 1.0
- assert abs(-1.0) == 1.0
- assert abs(0.0) == 0.0
- # import math
- # assert math.isnan(0/0)
- # assert 2e3j == 2000j
- # assert -2e-3j == -0.002j
- # try:
- # float('-x13')
- # exit(1)
- # except ValueError:
- # pass
|