首先,修改一个名为cube的函数,该函数接受一个名为number的参数。不要忘记括号和冒号! 使该函数返回该数字的多维数据集(即该数字乘以其自身并再次乘以其自身)。 定义一个名为by_three的第二个函数,它接受一个名为number的参数。 如果该数字可被3整除,则by_three应调用cube(number)并返回其结果。否则,by_three应返回False。
final BlockingQueue<Data> queue = …
// use a factory, instead of supplying the crawler type to pass the queue
controller.start(new WebCrawlerFactory<MyCrawler>() {
@Override
public MyCrawler newInstance() throws Exception {
return new MyCrawler(queue);
}
}, numberOfCrawlers);
这个答案中的错误是什么?它正在显示糟糕,再试一次。 by_three(3)返回3而不是27
答案 0 :(得分:0)
你的缩进是错误的。你需要像这样放cube(9)
:
if number%3 == 0:
cube(9)
您可能希望返回cube()
的结果,而不是原始的number
。
答案 1 :(得分:0)
您应该将缩进更改为:
def cube(number):
return number ** 3
def by_three(number):
if number % 3 == 0:
cube(9)
return number
else:
return False
答案 2 :(得分:0)
我认为你需要做的就是缩进立方体(9)。这是因为它在if语句下。
def cube(number):
return number ** 3
def by_three(number):
if number % 3 == 0:
cube(9)
return 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
此外by_three
功能可以更短
def by_three(number):
return cube(number) if number % 3 == 0 else False