【发布时间】:2018-05-04 12:27:50
【问题描述】:
我编写了一个函数,它获取两个数字和一个操作(字符串),并返回两个数字与给定操作的结果。例如,calculate_matehamatical_expression(5,6,'+') 应该返回 11。我将分配分配给小函数,但是当我调用这些小函数时,它总是返回 None。有人可以向我解释为什么会这样吗?这是我写的代码:
def mathematical_sum(num1,num2):
return num1 + num2
def mathematical_difference(num1,num2):
return num1 - num2
def mathematical_product(num1,num2):
return num1 * num2
def mathematical_division(num1,num2):
if num2 != 0:
return num1 / num2
else:
return None
def operation_error(operation):
if operation != "+" or operation != "-" or operation != "*" or operation != "/":
return None
def calculate_mathematical_expression(num1,num2,operation):
if operation == "+":
mathematical_sum(num1,num2)
elif operation == "-":
mathematical_difference(num1,num2)
elif operation == "*":
mathematical_product(num1,num2)
elif operation == "/":
mathematical_division(num1,num2)
else:
operation_error(operation)
【问题讨论】:
-
在
calculate_mathematical_expression中,您没有对返回的值做任何事情。而operation_error什么都不做。 -
return或return None或没有return声明做同样的事情:return None。 -
你们是对的!谢谢!只是我被告知要划分为小功能,然后构建更大的功能,这就是它出现的原因。
标签: python python-3.x return