我正在学习Codeacademy的编程。我有一个任务,但无法弄清楚我做错了什么。
首先,我需要定义一个返回值的多维数据集的函数。然后我应该定义第二个函数,检查一个数字是否可以被3整除。如果是,我需要返回它,否则我需要返回False
。
继承人代码:
def cube(c):
return c**3
def by_three(b):
if b % 3 == 0:
cube(b)
return b
else:
return False
答案 0 :(得分:8)
您没有捕获函数cube
的返回值。做b = cube(b)
。或者更好的是,return cube(b)
。
def cube(c):
return c**3
def by_three(b):
if b % 3 == 0:
b = cube(b)
return b # Or simply return cube(b) and remove `b = cube(b)`
else:
return False
当您使用参数cube
调用b
函数时,它返回传递参数的多维数据集,您需要将其存储在变量中并将其返回给用户,在当前代码中,你忽略了返回的价值。
答案 1 :(得分:2)
我认为这个答案也可能有用:
def cube(b,c):
b = c ** 3
if b % 3 == 0:
return b
else:
return False
return b
我知道这可能有点多余,但我认为这可能是做你正在做的事情的另一种方式。我认为Sukrit更简单。
答案 2 :(得分:0)
我已经完成了Codecdemy,这是我的代码。
def cube(n):
return n ** 3
def by_three(number):
if number % 3 == 0:
return cube(number)
else:
return False
答案 3 :(得分:0)
这是我刚刚开发的轻量级解决方案,应该可以工作:)
def cube(number):
return number**3
def by_three(number):
if number % 3 == 0:
return cube(number)
else:
return False
答案 4 :(得分:0)
def cube(num):
return n ** 3
def by_three(value):
if value % 3 == 0:
return cube(value)
else:
return False
答案 5 :(得分:0)
尝试为每个人拨打同一封信。而不是使用' c'和' b',只需使用' c'
def cube(c):
return c**3
def by_three(c):
if c % 3 ==0:
return cube(c)
else:
return False