【发布时间】:2016-11-27 13:05:06
【问题描述】:
我已经被这个问题的解决方案困住了很长一段时间,我已经编写了一段按要求工作的代码,但我似乎在编译结束时遇到了一个错误
您需要设计一个迭代和递归函数,称为 replicate_iter 和 replicate_recur 分别接收两个 参数: times 是重复的次数和 data which 是要重复的数字或字符串。
函数应该返回一个包含重复数据的数组 争论。例如,replicate_recur(3, 5) 或 replicate_iter(3,5) 应该返回 [5,5,5]。如果时间参数是负数或零, 返回一个空数组。如果参数无效,则引发 ValueError。
我的代码如下:
def replicate_iter(times,data):
emptyArray = []
if not isinstance(data, int) and not isinstance(data, str):
raise ValueError
if times <= 0:
print emptyArray
if not isinstance(times,int):
raise ValueError
else:
while times > 0:
emptyArray.append(data)
times -= 1
return emptyArray
array = []
def replicate_recur(times,data):
if not isinstance(data,int) and not isinstance(data,str):
raise ValueError
if not isinstance(times,int):
raise ValueError
if times <= 0 and len(array) != 0:
return array
elif times <= 0 and len(array) <=0:
return []
else:
array.append(data)
replicate_recur(times - 1,data)
请多多指教
错误信息:
【问题讨论】:
-
把你的错误回溯作为代码而不是图像。
-
谢谢。会做。新手
-
没有汗水。只需edit您的问题将错误消息包含为文本而不是图像,以便可以通过搜索找到。
标签: python algorithm loops recursion