我创建了一个变量,该变量将两个数字相加,而不是另一个将那个数字乘以2。在这两个函数之后,我尝试将这两个函数的结果除以2。不起作用。是因为我没有将前一个函数的结果设为全局变量吗?
我尝试将其设置为全局变量,但它不起作用。
def add(num1,num2):
return num1 + num2
def multiply():
mult = add(1,2)*2
print(mult)
def divide():
start = multiply() /2
print(start)
divide()
我希望得到结果3,但相反却抛出了一条错误消息。我做错了什么?
答案 0 :(得分:2)
您的multiply()
不返回任何内容,因此当divide()
开始工作时,它将尝试将None
除以2
并引发错误。这是一些固定的代码:
def add(num1,num2):
return num1 + num2
def multiply():
mult = add(1,2)*2
return mult
def divide():
start = multiply() /2
return start
print(divide())
它将打印:
3.0
但这是更深层次的问题:
您的multiply
和divide
函数没有输入,因此它们是无用的,乘法函数和除法函数。您可以将它们重写为:
def add(num1,num2):
return num1 + num2
def multiply(num1,num2):
return num1 * num2
def divide(num1,num2):
return num1 / num2
print(divide(add(1, 3), multiply(2, 5)))
0.4