2016-10-03 21 views
-2

好了,所以我有这个功能,我需要创建和我想的代码检查是某种缺陷,我想管理它,但我的代码似乎仍然未能需要帮助处理与方格这里

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

正确的输出应该是它已经给出的输出,然后是一个没有任何返回的行。奇怪的。 – Xangr8

0

L is a list of lists of ints

好了,你为什么要检查type(L) == inttype(L) == list始终是真实的,根据规范要求?

Mutates L

你不是突变L可言;你正在返回一个新的列表。变异L意味着做类似L[...] = xxx的事情。

It does not return anything.

你不应该使用return关键字reversecomp可言。