mirror of
https://github.com/RustPython/RustPython.git
synced 2026-10-28 18:59:04 +08:00
split math_basics.py to proper files
This commit is contained in:
1 parent
d62ea37729
commit
bf0daabbae
4 files changed
+64
-72
No files matched your search
@@ -6,6 +6,22 @@ assert pow(5, 3, 100) == 25
|
||||
assert pow(41, 7, 2) == 1
|
||||
assert pow(7, 2, 49) == 0
|
||||
|
||||
assert pow(0, 0) == 1
|
||||
assert pow(2, 2) == 4
|
||||
assert pow(1, 2.0) == 1.0
|
||||
assert pow(2.0, 1) == 2.0
|
||||
assert pow(0, 10**1000) == 0
|
||||
assert pow(1, 10**1000) == 1
|
||||
assert pow(-1, 10**1000+1) == -1
|
||||
assert pow(-1, 10**1000) == 1
|
||||
|
||||
assert pow(2, 4, 5) == 1
|
||||
assert_raises(TypeError, pow, 2, 4, 5.0)
|
||||
assert_raises(TypeError, pow, 2, 4.0, 5)
|
||||
assert_raises(TypeError, pow, 2.0, 4, 5)
|
||||
assert pow(2, -1, 5) == 3
|
||||
assert_raises(ValueError, pow, 2, 2, 0)
|
||||
|
||||
|
||||
assert_almost_equal = assert_equal
|
||||
|
||||
|
||||
@@ -1,5 +1,19 @@
|
||||
from testutils import assert_raises
|
||||
|
||||
assert round(1.2) == 1
|
||||
assert round(1.8) == 2
|
||||
assert round(0.5) == 0
|
||||
assert round(1.5) == 2
|
||||
assert round(-0.5) == 0
|
||||
assert round(-1.5) == -2
|
||||
|
||||
# ValueError: cannot convert float NaN to integer
|
||||
assert_raises(ValueError, round, float('nan'))
|
||||
# OverflowError: cannot convert float infinity to integer
|
||||
assert_raises(OverflowError, round, float('inf'))
|
||||
# OverflowError: cannot convert float infinity to integer
|
||||
assert_raises(OverflowError, round, -float('inf'))
|
||||
|
||||
assert round(0) == 0
|
||||
assert isinstance(round(0), int)
|
||||
assert round(0.0) == 0
|
||||
|
||||
@@ -1,72 +0,0 @@
|
||||
from testutils import assert_raises
|
||||
|
||||
assert -3 // 2 == -2
|
||||
assert -3 % 2 == 1
|
||||
|
||||
a = 4
|
||||
|
||||
#print(a ** 3)
|
||||
#print(a * 3)
|
||||
#print(a / 2)
|
||||
#print(a % 3)
|
||||
#print(a - 3)
|
||||
#print(-a)
|
||||
#print(+a)
|
||||
|
||||
assert a ** 3 == 64
|
||||
assert a * 3 == 12
|
||||
assert a / 2 == 2
|
||||
assert 2 == a / 2
|
||||
assert a % 3 == 1
|
||||
assert a - 3 == 1
|
||||
assert -a == -4
|
||||
assert +a == 4
|
||||
|
||||
assert round(1.2) == 1
|
||||
assert round(1.8) == 2
|
||||
assert round(0.5) == 0
|
||||
assert round(1.5) == 2
|
||||
assert round(-0.5) == 0
|
||||
assert round(-1.5) == -2
|
||||
|
||||
# ValueError: cannot convert float NaN to integer
|
||||
assert_raises(ValueError, round, float('nan'))
|
||||
# OverflowError: cannot convert float infinity to integer
|
||||
assert_raises(OverflowError, round, float('inf'))
|
||||
# OverflowError: cannot convert float infinity to integer
|
||||
assert_raises(OverflowError, round, -float('inf'))
|
||||
|
||||
assert pow(0, 0) == 1
|
||||
assert pow(2, 2) == 4
|
||||
assert pow(1, 2.0) == 1.0
|
||||
assert pow(2.0, 1) == 2.0
|
||||
assert pow(0, 10**1000) == 0
|
||||
assert pow(1, 10**1000) == 1
|
||||
assert pow(-1, 10**1000+1) == -1
|
||||
assert pow(-1, 10**1000) == 1
|
||||
|
||||
assert pow(2, 4, 5) == 1
|
||||
assert_raises(TypeError, pow, 2, 4, 5.0)
|
||||
assert_raises(TypeError, pow, 2, 4.0, 5)
|
||||
assert_raises(TypeError, pow, 2.0, 4, 5)
|
||||
assert pow(2, -1, 5) == 3
|
||||
assert_raises(ValueError, pow, 2, 2, 0)
|
||||
|
||||
# bitwise
|
||||
|
||||
assert 8 >> 3 == 1
|
||||
assert 8 << 3 == 64
|
||||
|
||||
# Left shift raises type error
|
||||
assert_raises(TypeError, lambda: 1 << 0.1)
|
||||
assert_raises(TypeError, lambda: 1 << "abc")
|
||||
|
||||
# Right shift raises type error
|
||||
assert_raises(TypeError, lambda: 1 >> 0.1)
|
||||
assert_raises(TypeError, lambda: 1 >> "abc")
|
||||
|
||||
# Left shift raises value error on negative
|
||||
assert_raises(ValueError, lambda: 1 << -1)
|
||||
|
||||
# Right shift raises value error on negative
|
||||
assert_raises(ValueError, lambda: 1 >> -1)
|
||||
@@ -0,0 +1,34 @@
|
||||
from testutils import assert_raises
|
||||
|
||||
assert -3 // 2 == -2
|
||||
assert -3 % 2 == 1
|
||||
|
||||
a = 4
|
||||
|
||||
assert a ** 3 == 64
|
||||
assert a * 3 == 12
|
||||
assert a / 2 == 2
|
||||
assert 2 == a / 2
|
||||
assert a % 3 == 1
|
||||
assert a - 3 == 1
|
||||
assert -a == -4
|
||||
assert +a == 4
|
||||
|
||||
# bitwise
|
||||
|
||||
assert 8 >> 3 == 1
|
||||
assert 8 << 3 == 64
|
||||
|
||||
# Left shift raises type error
|
||||
assert_raises(TypeError, lambda: 1 << 0.1)
|
||||
assert_raises(TypeError, lambda: 1 << "abc")
|
||||
|
||||
# Right shift raises type error
|
||||
assert_raises(TypeError, lambda: 1 >> 0.1)
|
||||
assert_raises(TypeError, lambda: 1 >> "abc")
|
||||
|
||||
# Left shift raises value error on negative
|
||||
assert_raises(ValueError, lambda: 1 << -1)
|
||||
|
||||
# Right shift raises value error on negative
|
||||
assert_raises(ValueError, lambda: 1 >> -1)
|
||||
Reference in new issue
Block a user