刚接触 Python 5 天,通过 Code Academy 学习。我对任何其他语言一无所知(对 Ruby 知之甚少!)。
我对这段代码做错了什么?
问:写一个函数,
by_three
调用第二个函数,cube
如果一个数能被 3 整除,"False"
否则。然后,您应该返回从中获得的结果cube
。至于cube
,该函数应该返回从传递的数字的立方体by_three
。(乘以一个数字与将其提高到三次方相同)。因此,例如,
by_three
应该取 9,确定它可以被 3 整除,然后将其传递给立方体,它返回 729(9**3 的结果)。但是,如果by_three
得到 4,它应该返回False
并保留它。最后,
by_three
在三个单独的线路上分别拨打 11、12 和 13。
回答:
def by_three(n):
orig_num = n
if (isinstance(orig_num, int) and orig_num%3 == 0 ):
cube(orig_num)
else:
print "False"
def cube(orig_num):
cube = orig_num**3
print cube
return
by_three(11)
by_three(12)
by_three(13)
当我运行上面的代码时,这就是我得到的。为什么这些值会以这种方式出现?
False
1728
False
==> None
False
False
1728
Oops, try again.