好的,所以我有这个功能,我需要创建,我认为代码检查器有点瑕疵,我尝试管理它,但我的代码似乎仍然失败
def reversecomp(L):
""" assumes L is a list of lists whose elements are ints
Mutates L such that it reverses its elements and also
reverses the order of the int elements in every element of L.
It does not return anything.
"""
if L == []:
return L
elif type(L) == int:
return L
else:
return reversecomp(L[1:]) + [reversecomp(L[0])]
def run_code(L):
return reversecomp(L)
print(L)
问题表明你需要改变L.当你这样做时你的代码必须工作: L = [[0,1,2],[1,2,3],[3,2,1],[10,-10,100]] reversecomp(L) 打印(L)
测试:run_code([[0,1,2],[1,2,3]])
你的输出:
[[3,2,1],[2,1,0]]
正确输出:
[[3,2,1],[2,1,0]]
无
答案 0 :(得分:0)
规范说"它没有返回任何东西&#34 ;;你的程序确实如此。
答案 1 :(得分:0)
L is a list of lists of ints
好的,那么为什么在符合规范的情况下,type(L) == int
何时始终为真,我会检查type(L) == list
?
Mutates L
你根本没有变异L
;你要返回一个新的清单。变异L
意味着做L[...] = xxx
之类的事情。
It does not return anything.
您不应该在return
中使用reversecomp
关键字。