TypeError' int'

时间:2015-05-19 16:53:06

标签: python-3.x recursion typeerror

我尝试使函数返回所有可能的数字列表排列,例如: 列表= [1,2,3]

[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1] ]

但是我一直遇到同样的错误 TypeError:' int'对象不可调用 在这一行

return permutations(result,variable,List,permutations)

其余代码是

def permutationsaux(List):
    if List==[]:
        return []
else:
    return permutations([List],0,List,countpermutations(List))

def permutations(result,variable,List,permutations):
    if len(result)==permutations:
        return result
    elif len(result[variable])==len(List):
        result.append([])
        variable=variable+1
        return permutations(result,variable,List,permutations)
    return permutations(result[variable]+reorderlist(List),variable+1,reorderlist(lista),permutations)

def countpermutations(List):
    if List==[]:
        return 1
    return len(List)*countpermutations(List[1:])

def reorderlist(List):
    temp=List[len(List)-2]
    List[len(List)-2]=LIst[len(List)-1]
    List[len(List)-1]=temp
    return List

1 个答案:

答案 0 :(得分:0)

您的功能"排列"有一个名为" permutations"的参数。猜猜哪一个在函数范围内。