添加mymath.py数学运算模块
实现乘法和除法运算函数,包含除零异常处理 添加完整的测试代码
This commit is contained in:
71
mymath.py
Normal file
71
mymath.py
Normal file
@@ -0,0 +1,71 @@
|
||||
"""
|
||||
mymath.py - 数学运算模块
|
||||
提供乘法和除法运算
|
||||
"""
|
||||
|
||||
def multiply(a: float, b: float) -> float:
|
||||
"""
|
||||
计算两个数的乘积
|
||||
|
||||
Args:
|
||||
a: 第一个数
|
||||
b: 第二个数
|
||||
|
||||
Returns:
|
||||
两个数的乘积
|
||||
"""
|
||||
return a * b
|
||||
|
||||
|
||||
def divide(a: float, b: float) -> float:
|
||||
"""
|
||||
计算两个数的除法
|
||||
|
||||
Args:
|
||||
a: 被除数
|
||||
b: 除数
|
||||
|
||||
Returns:
|
||||
两个数的商
|
||||
|
||||
Raises:
|
||||
ValueError: 当除数为零时抛出异常
|
||||
"""
|
||||
if b == 0:
|
||||
raise ValueError("除数不能为零")
|
||||
return a / b
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
# 测试乘法
|
||||
print("测试乘法:")
|
||||
result = multiply(5, 3)
|
||||
print(f"5 * 3 = {result}")
|
||||
assert result == 15, f"乘法测试失败: 期望 15, 实际 {result}"
|
||||
|
||||
# 测试除法
|
||||
print("\n测试除法:")
|
||||
result = divide(10, 2)
|
||||
print(f"10 / 2 = {result}")
|
||||
assert result == 5, f"除法测试失败: 期望 5, 实际 {result}"
|
||||
|
||||
# 测试除数为零
|
||||
print("\n测试除数为零:")
|
||||
try:
|
||||
divide(10, 0)
|
||||
print("错误: 预期异常未抛出")
|
||||
assert False, "除数为零时应抛出异常"
|
||||
except ValueError as e:
|
||||
print(f"成功捕获异常: {e}")
|
||||
|
||||
# 测试浮点数
|
||||
print("\n测试浮点数:")
|
||||
result = multiply(2.5, 4)
|
||||
print(f"2.5 * 4 = {result}")
|
||||
assert result == 10.0, f"浮点数乘法测试失败: 期望 10.0, 实际 {result}"
|
||||
|
||||
result = divide(7.5, 2.5)
|
||||
print(f"7.5 / 2.5 = {result}")
|
||||
assert result == 3.0, f"浮点数除法测试失败: 期望 3.0, 实际 {result}"
|
||||
|
||||
print("\n所有测试通过!")
|
||||
Reference in New Issue
Block a user